ActiveRecord :: Relation对象上的未定义方法 [英] undefined method on ActiveRecord::Relation object
本文介绍了ActiveRecord :: Relation对象上的未定义方法的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
以下代码
fieldvalue = Admin::FieldValue.where(:item_id => @admin_item.id, :field_id => key)
fieldvalue.update_attributes(:value => value)
引发以下错误
NoMethodError (undefined method `update_attributes' for #<ActiveRecord::Relation:0x00000102dfc868>):
为什么它是 Relation
对象而不是 FieldValue
对象,什么是管理此对象的正确方法
why is it a Relation
object and not a FieldValue
object, what's the right way to manage this
推荐答案
fieldvalue
应该只返回一个值吗?
fieldvalue
should return only one value?
fieldvalue = Admin::FieldValue.where(:item_id => @admin_item.id, :field_id => key).first
fieldvalue.update_attributes(:value => value)
或者如果您期望多个项目:
Or if you expect multiple items:
fieldvalue = Admin::FieldValue.where(:item_id => @admin_item.id, :field_id => key)
fieldvalue.update_all(:value => value)
这篇关于ActiveRecord :: Relation对象上的未定义方法的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文