【发布时间】:2011-11-28 16:01:49
【问题描述】:
我的模型有这个范围
scope :supported, order("name").collect {|m| m.name}.join(", ")
它会抛出一个错误
NoMethodError: undefined method `includes_values' for "blah, blahblah":String
我认为这是因为我试图将字符串作为 ActiveRecord 对象返回,关于如何修复它的想法?实际上,我已经在视图中使用了此代码,但我认为它在模型中可能会更好,也许不是?
编辑 将其移动到非范围类方法中是可行的
def supported
order("name").collect {|m| m.name}.join(", ")
end
这里有一个相关的question,它更好地阐明了scope 与self 类方法之间的区别。
【问题讨论】:
标签: ruby-on-rails ruby-on-rails-3 activerecord