我有一个rails应用程序,我正在尝试使用哈希中获得的属性更新模型。
我的代码是:
attr_hash = {"name"=>"cat_name"}
@category.update_attributes(attr_hash, :type => 'sample')
以下是我想要修复的类型,attr哈希可以是表单提交的任何属性。但这给了我一个错误。有什么想法吗?
答案 0 :(得分:4)
attr_hash = {"name"=>"cat_name"}
@category.update_attributes(attr_hash.merge(type: "sample"))
(因为update_attributes
只接受一个哈希)
说明:
目前你正在通过这个:
update_attributes({"name"=>"cat_name"}, {type: "sample"})
但你想要这个:
update_attributes({"name"=>"cat_name", type: "sample"})
所以你需要合并这两个哈希值。