草庐IT

MySQL扩展

全部标签

ruby-on-rails - 动态扩展 Virtus 实例属性

假设我们有一个Virtus模型UserclassUserincludeVirtus.modelattribute:name,String,default:'John',lazy:trueend然后我们创建该模型的一个实例并从Virtus.model扩展以动态添加另一个属性:user=User.newuser.extend(Virtus.model)user.attribute(:active,Virtus::Attribute::Boolean,default:true,lazy:true)当前输出:user.active?#=>trueuser.name#=>'John'但是当我尝试

mysql - 在为 RoR 应用程序在 MySQL 和 Amazon 的 SimpleDB 之间做出决定时,您需要考虑什么?

我刚刚开始研究使用Amazon的SimpleDB服务作为我计划构建的RoR应用程序的数据存储的可行性。我们将为Web服务器使用EC2,并计划将EC2用于MySQL服务器。但现在的问题是,为什么不使用SimpleDB?应用程序(如果成功)需要在支持的用户数量方面具有很强的可扩展性,需要维护简单高效的代码库,并且需要可靠。我很好奇SO社区对此有何看法。 最佳答案 RubySimpleDB库不如ActiveRecord(默认的RailsDB适配器)那么完整,因此您习惯的许多功能将不存在。从好的方面来说,它是无模式的、可扩展的并且可以很好地

ruby-on-rails - rails 无法加载此类文件 -- mysql2/mysql2 (LoadError)

我是ruby​​onrails的新手,我找不到这个错误的解决方案:railss/usr/local/share/gems/gems/mysql2-0.3.13/lib/mysql2.rb:8:in`require':cannotloadsuchfile--mysql2/mysql2(LoadError)from/usr/local/share/gems/gems/mysql2-0.3.13/lib/mysql2.rb:8:in`'from/usr/local/share/gems/gems/bundler-1.3.5/lib/bundler/runtime.rb:72:in`requi

c - 在不使用其他功能的情况下释放 C 扩展中的全局 VM 锁

我不明白为什么在发布或获取RubyCAPI中的GVL时需要另一个间接级别。rb_thread_call_without_gvl()和rb_thread_call_with_gvl()都需要一个只接受一个参数的函数,但情况并非总是如此。我不想仅仅为了发布GVL而将我的参数包装在一个结构中。它使代码的可读性变得复杂,并且需要从void指针转换到void指针。在查看Ruby的线程代码后,我找到了GVL_UNLOCK_BEGIN。/GVL_UNLOCK_END与Python的Py_BEGIN_ALLOW_THREADS/Py_END_ALLOW_THREADS匹配的宏但我找不到关于它们以及何时

ruby-on-rails - Ruby 解释器 (CUI) 1.9.2p180 [i386-mingw32] 已停止工作(我没有使用 MySQL)

我的ruby​​解释器几乎在每次页面请求时都会崩溃,并出现以下错误:Ruby解释器(CUI)1.9.2p180[i386-mingw32]已停止工作我没有使用MySQL,也没有安装gem,许多在线帖子都认为这是一个潜在原因。我可以从哪里开始解决此问题?我的环境如下。这是一个关键问题,因为我无法在这种环境中继续开发,所以任何想法都将不胜感激。谢谢!window764位ruby1.9.2p180[i386-mingw32],使用ruby​​installer安装rails3.0.4使用webrick/mongrel崩溃 最佳答案 解决方

ruby - 如何在 Ruby Gem 中封装 Ruby C 扩展?

我找不到很多这方面的文档。如何打包gem,以便在安装gem时编译C扩展?特别是我想这样做:在Linux和MacOSX上,我想在安装gem时编译C扩展在Windows上,我想简单地安装一个预编译的.so对此的任何帮助,特别是示例源代码,都将非常有用:) 最佳答案 LuisLavena创造了rake-compiler只是为了这个目的。Homepage/GitHubGitHubWiki但是,您确定需要C扩展吗?关于C扩展的事情是,每个Ruby实现都有自己的C扩展API(而非基于C的API,如XRuby、JRuby、Ruby.NET、Iro

ruby-on-rails - 如何获取给定内容类型的默认扩展名?

给定变量content_type="application/pdf"也可以包含任何其他mime类型。如何获取内容类型的默认扩展名?我目前有两个解决方案,看起来很“复杂”。破解字符串content_type.split("/")[1]使用MIME::类型require'mime/types'MIME::Types[content_type].first.extensions.first有没有更好的解决方案? 最佳答案 您只需使用ruby​​的Hash.invert方法即可。Thisanswer展示了如何做:Rack::Mimehast

ruby-on-rails - REXML::RuntimeError(实体扩展变得太大)

今天升级到Ruby-1.9.3-p392后,REXML在尝试检索超过一定大小的XML响应时抛出运行时错误-一切正常,当接收到25条以下的XML记录时不会抛出错误,但是一旦达到特定的XML响应长度阈值,我收到此错误:Erroroccurredwhileparsingrequestparameters.Contents:RuntimeError(entityexpansionhasgrowntoolarge):/.rvm/rubies/ruby-1.9.3-p392/lib/ruby/1.9.1/rexml/text.rb:387:in`blockinunnormalize'我意识到这在最

ruby - 扩展模块和类变量访问?

我无法理解为什么在以下示例中访问模​​block的类变量失败:moduleM@@xyz=123endM.class_variables#[:@@xyz]M.class_variable_get:@@xyz#123,sofarsogoodclassCextendMendC.singleton_class.class_variables#[:@@xyz]C.singleton_class.class_variable_get:@@xyz#NameError:#uninitializedclassvariable@@xyzinClass谁能解释为什么类变量@@xyz在C的单例类中突然无法访问

ruby-on-rails - ruby 包含 vs 扩展

我正在尝试将裁剪图像所需的一些逻辑抽象到一个模块中,以免弄乱我的模型。代码基于http://railscasts.com/episodes/182-cropping-imagesmoduleCroppableImagedefcroppable_image(*image_names)image_names.eachdo|image_name|define_method"#{image_name}_sizes"do{:cropped=>read_attribute("#{image_name}_size").to_s,:large=>"800x800>"}enddefine_method"