- xml - AJAX/Jquery XML 解析
- 具有多重继承的 XML 模式
- .net - 枚举序列化 Json 与 XML
- XML 简单类型、简单内容、复杂类型、复杂内容
我正在尝试使用 google_search ruby 库(代码如下)但它提示“cattr_accessor
是一个未定义的方法” - 任何想法为什么会这样或我如何解决它?
require 'rubygems'
require 'google_search'
GoogleSearch.web :q => "pink floyd"
最佳答案
cattr_accessor
似乎是一个 Rails 扩展 that acts like attr_accessor
, but is accessible on both the class and its instances .
如果您想复制 cattr_accessor
方法的源代码,请查看 this documentation :
# File vendor/rails/activesupport/lib/active_support/core_ext/class/attribute_accessors.rb, line 46
def cattr_accessor(*syms)
cattr_reader(*syms)
cattr_writer(*syms)
end
# File vendor/rails/activesupport/lib/active_support/core_ext/class/attribute_accessors.rb, line 4
def cattr_reader(*syms)
syms.flatten.each do |sym|
next if sym.is_a?(Hash)
class_eval("unless defined? @@\#{sym}\n@@\#{sym} = nil\nend\n\ndef self.\#{sym}\n@@\#{sym}\nend\n\ndef \#{sym}\n@@\#{sym}\nend\n", __FILE__, __LINE__)
end
end
# File vendor/rails/activesupport/lib/active_support/core_ext/class/attribute_accessors.rb, line 24
def cattr_writer(*syms)
options = syms.extract_options!
syms.flatten.each do |sym|
class_eval("unless defined? @@\#{sym}\n@@\#{sym} = nil\nend\n\ndef self.\#{sym}=(obj)\n@@\#{sym} = obj\nend\n\n\#{\"\ndef \#{sym}=(obj)\n@@\#{sym} = obj\nend\n\" unless options[:instance_writer] == false }\n", __FILE__, __LINE__)
end
end
关于ruby - 轨道外的 cattr_accessor,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3002247/
我正在尝试使用 google_search ruby 库(代码如下)但它提示“cattr_accessor 是一个未定义的方法” - 任何想法为什么会这样或我如何解决它? require 'rubyg
我有点生气为什么会这样: cattr_accessor :aggregate { true } 失败并出现错误: syntax error, unexpected '{', expecting key
我有点生气为什么会这样: cattr_accessor :aggregate { true } 失败并出现错误: syntax error, unexpected '{', expecting key
我正在阅读 Rails 3 的 Rails 指南,他们使用这种方法: cattr_accessor :attribute 这是什么方法?它是一个 Rails 方法吗?我以前从未见过。 最佳答案 这是一
Rails 3 cattr_accessor 线程安全吗? 最佳答案 不,不是。只需快速浏览一下 cattr_reader 代码即可: # File activesupport/lib/active_
运行这段代码: module A def self.included(klass) klass.send(:cattr_accessor, :my_name) end def se
我是 ruby 和 rails 的新手。在我的 Rails 应用程序中,我正在尝试使用 Wicked Wizard gem,需要一些帮助来理解我在代码中遇到的 cattr_accessor c
好吧,我知道这有点怪诞,但我正在运行 JRuby on Rails,而且我对两者都比较陌生。我看到一些我无法理解的行为,我想知道是我做错了什么还是我的堆栈有问题。基本问题是我的类属性似乎正在重新初始化
我无法从源代码中找出类和模块中分别提供的 cattr_* 和 mattr_* 方法之间的区别。我读了这个问题:What is mattr_accessor in a Rails module?其中提供
我不熟悉 active_support,所以请多多包涵! Fox's library允许通过谷歌的 API 进行搜索,但它需要积极的支持。我似乎无法让它工作!有什么想法吗? require 'ruby
我是一名优秀的程序员,十分优秀!