草庐IT

debugging-a-missing-hostedtranspo

全部标签

ruby - 如何从 method_missing 获取绑定(bind)?

我试图找到一种方法来在Ruby(1.8)的method_missing中从调用者那里获取绑定(bind),但我似乎无法找到实现它的方法。希望下面的代码能解释我想做什么:classAdefsome_methodx=123nonexistent_methodenddefmethod_missing(method,*args,&block)b=caller_binding#那么...有没有办法获得调用者的绑定(bind),或者这在Ruby(1.8)中是不可能的? 最佳答案 这是一个(有点脆弱的)hack:#caller_binding.r

Ruby: 未初始化常量 Log4r::DEBUG (NameError) 问题

在Ruby中使用log4r时,我写了一个类似于下面的配置文件:require'rubygems'require'log4r'require'log4r/outputter/datefileoutputter'SERVICE_LOG={:log_name=>'service',:log_file=>'service.log',:log_level=>Log4r::DEBUG,:message_pattern=>"[%-5l%d]%C:%M",:date_pattern=>"%Y-%m-%d%H:%M:%S"}当我运行它时,它抛出了以下异常:C:/Ruby187/lib/ruby/gems

ruby - ruby中定义的method_missing在哪里

我使用ruby​​-1.9.3。当method_missing方法来的时候,我试图找出这个方法是在哪里定义的。我看了一下RubyDoc,发现方法是在BasicObject中定义的,但是当我在irb中使用BasicObject.methods.grep/^method/时,它给了我一个没有任何method_missing方法的结果数组,然后,我尝试了Kernel。methods.grep/^method/,但仍然没有method_missing方法。你能帮帮我吗?我在哪里可以找到这个方法? 最佳答案 使用Method#owner知道在

ruby - method_missing

我正在尝试实现method_missing以将$转换为其他货币,如5.dollarsyield为5、5.yen将yield为0.0655.euro6.56等等。我现在可以做到这一点。现在我需要实现它,但以5.dollars.in(:yen)为例。这是我现在拥有的:classNumeric@@currencies={'yen'=>0.013,'euro'=>1.292,'rupee'=>0.019}defmethod_missing(method_id)singular_currency=method_id.to_s.gsub(/s$/,'')if@@currencies.has_key

ruby-on-rails - Heroku|Ruby 参数错误 : Missing required arguments:

我在/config/initializers/carrier_wave.rb中添加了aws访问信息:ifRails.env.production?CarrierWave.configuredo|config|config.fog_credentials={#ConfigurationforAmazonS3:provider=>'AWS',:aws_access_key_id=>ENV['access_key'],:aws_secret_access_key=>ENV['secret_access_key'],}config.fog_directory=ENV['bucket']ende

ruby-on-rails - 如何调试插件/gem? (附有设置和使用 ruby​​-debug gem 的有用说明)

有没有像我们使用logger.debug调试模型/Controller的方法?或者更好的方法?谢谢!编辑1使用ruby-debug对我来说似乎是一个陡峭的学习曲线,有人能给我指出类似于logger.debug的东西吗?编辑2好吧,我想我开始掌握ruby​​-debug了。新手设置和使用ruby​​-debug的一些有用的注意事项:geminstallruby-debuginconfig/environments/development.rbaddinclude'ruby-debug'thenjustabovethecodeyouwanttodebugadd:debuggerifyoun

ruby-on-rails - method_missing 覆盖不起作用

我写了一个方便的ActiveRecord扩展来将方法委托(delegate)给一个基础对象(基于multi-tableinheritance)classActiveRecord::Basedefself.acts_as(base)class_eval%Q{defmethod_missing(method,*args,&blk)#{base}.send(method,*args,&blk)rescueNoMethodErrorsuperend}endend我有一个state类和一个base类#stateclassclassMyState'MyState'has_one:tail,:cla

ruby - 创建 ActiveRecord 模型时出现问题 : data missing from save

我在开发的Sinatra应用程序中使用ActiveRecord在数据库中创建新模型行时遇到问题。正在创建有问题的对象,没有任何错误(使用保存!,没有引发异常),但我为保存指定的大部分数据都不存在。classProjectMeta对来self正在发送的项目对象以及我正在创建的新元对象的数据的所有检查都表明数据存在。但是当我在保存前后执行meta.inspect时,它显示所有数据(project_id除外)都处于默认状态(零)。我还检查了meta.errors.nil?果然,保存后没有任何错误。最令人费解的是,如果我回过头来获取一个具有该project_id的新元实例并将数据放入其中,那么

ruby-on-rails - rails 上的 ruby : heroku: Missing `secret_key_base` for 'production' environment

我将key添加到herokuconfigvar中,但我仍然遇到错误。这是正确的方法吗?我忽略了secrets.yml,因为我从其他来源了解到将其公开不是一个好主意。在heroku配置变量中:[key]SECRET_KEY_BASE[value]3280570382948240938在secrets.ymlproduction:secret_key_base:我还做错了什么?此外,如果我将我的key放入heroku的配置变量中,难道其他开发人员也能看到吗?那么,那不还是有点公开吗?我一直想知道这个概念。 最佳答案 你可以使用herok

ruby - RVM + Ruby 1.9.1 + ruby​​-debug = 错误?

我正在尝试在我的TextMate方法之间进行适当的导航。我很想在抽屉里放一张它们的list,但我想还没有这样的解决方案,对吧?因此,我正在尝试设置RubyAMP以与通过RVM安装的Ruby1.9.1-p378一起工作,但遇到了一些麻烦。RubyAMP需要ruby-debug,这是我尝试安装gem时得到的结果$rvmgeminstallruby-debuginfo:ruby-1.9.1-p378:ruby1.9.1p378(2010-01-10revision26273)[x86_64-darwin10]Buildingnativeextensions.Thiscouldtakeawhi