如何在Rails 4中使命名范围工作

时间:2014-06-07 07:33:28

标签: ruby-on-rails

我正在研究Rails并阅读一些实用示例的教程,我正在尝试使用我的PC(我有Rails 4.1.1)。在命名范围章节中,在主题模型中添加了2个范围:

class Subject < ActiveRecord::Base
    scope :visible, lambda { where(:visible => true) }
    scope :invisible, -> { where(:visible => false) }
end

如果我转到app root并输入rails console,然后输入Subject.visible,我会收到此错误消息: irb(main):020:0> Subject.visible NoMethodError: undefined method visible for #<Class:0x4df5068> from C:/Ruby193/lib/ruby/gems/1.9.1/gems/activerecord-4.1.1/lib/active_record/dynamic_matchers.rb:26:in method_missing from (irb):20

我该如何使这项工作? 作为参考,s = Subject.where(:visible => true)之类的命令可以正常工作。我只是在使用命名范围时遇到问题。感谢帮助。

0 个答案:

没有答案