美文网首页Ruby & Rails
[Rails tips] accepts_nested_attr

[Rails tips] accepts_nested_attr

作者: 我天真无邪 | 来源:发表于2015-11-16 11:20 被阅读601次

accepts_nested_attributes_for 类方法 这个方法可以在该model上生成一个属性writer
eg:

为model Book新增两个新方法

author_attributes=(attributes)
page_attributes=(attributes)

class Book < ActiveRecord::Base
    has_one :author
    has_many :pages

    accepts_nested_attributes_for :author, :pages
end

一对一关联

class Member < ActiveRecord::Base
    has_one :avatar

    accepts_nested_attributes_for :avatar
end

开启了一对一的关联嵌套之后可以用这样的方法一次性创建Member

params = { :member => { :name => "Jack", :avatar_attributes => { :icon => "test"} } }

下面是create

member = Member.create(params[:member])

params = { :member => { :avatar_attributes => { :id => '2', :icon => "sad" } } }
member.update_attributes(params[:member])

相关文章

网友评论

    本文标题:[Rails tips] accepts_nested_attr

    本文链接:https://www.haomeiwen.com/subject/yejjtttx.html