Rails 4无法批量分配attr_accessor方法

时间:2015-03-23 21:26:02

标签: ruby-on-rails ruby-on-rails-4 mass-assignment

我有以下型号:

class Something < ActiveRecord::Base
   attr_accessor :properties
   serialize :properties
end

我打电话的时候:

thing = Something.new({name:"foo",properties:{key_1:"val"}})

东西已填充名称但不填充属性。我可以手动分配属性:

thing.properties = {key_1:"val"}

并且工作正常,但我无法通过批量分配使其发挥作用。

我错过了什么吗?

1 个答案:

答案 0 :(得分:0)

Rails 4在控制器中使用strong parameters。因此,当您在模型中设置了attrs时,您仍需要在控制器中使用permit参数。

这是寻找/添加到控制器中的行:

def person_params
  params.require(:thing).permit(:parm1, :param2)
end