3

假设我有这个模型:

class Address < ActiveRecord::Base
  belongs_to address_type
  attr_accessible :text
end

另一个持有这样类型的模型:

class AddressType < ActiveRecord::Base
  has_many addresses
  attr_accessible :name
end

在这个模型中,有三种类型:

name => residential
name => po_box
name => government 

现在,假设我有这个传入的 JSON:

{
    text: "some text here",
    address_type: "po_box"
}

我希望能够在接受 JSON 的控制器中执行类似的操作,而无需先找到address_type对象:

address = Address.new
address.update_attributes(params) 

我找到了这个 gem,但它似乎只设计用于 JSON 输出。

4

1 回答 1

1

如果您在 params 哈希中接收 JSON,您可以通过以下方式进行转换:

data = JSON.parse(params[:name_of_the_JSON_fields])
address = Address.new
address.update_attributes(data) 
于 2013-08-17T13:48:53.573 回答