モデルのネストされた形式を作成する方法を理解しようとしていますが、それを行う方法と必要なものを理解するのに苦労しています。accepts_nested_attributes_for
私はRailsのドキュメントを読んでいて、Railscastを見てきましたが、説明なしで方法などについて言及しているだけです。誰か助けてくれませんか?
1 に答える
1
RailsのAPIごとに、次のように言われています。
ネストされた属性を使用すると、親を介して関連するレコードに属性を保存できます。
例:メンバーを介して投稿を管理する方法を示します。fields_forを使用して、フォーム内の関連フィールドを管理し、関連モデルの名前を渡してから、関連するすべての投稿レコードをループして、それぞれのフォームビルダーを作成します。 。
#controller
def new
@member = Member.new
end
#model
class Post < ActiveRecord::Base
belongs_to :member
end
class Member < ActiveRecord::Base
has_many :posts
accepts_nested_attributes_for :posts
end
#form
<%= form_for @member do |f| %>
<%= f.error_messages %>
<p>
<%= f.label :name %><br />
<%= f.text_field :name %>
</p>
<%= f.fields_for :posts do |builder| %>
<p>
<%= builder.label :account %><br />
<%= builder.text_area :account %>
</p>
<% end %>
<p><%= f.submit "Submit" %></p>
<% end %>
Rails API:http ://api.rubyonrails.org/classes/ActiveRecord/NestedAttributes/ClassMethods.html
于 2012-08-07T19:19:33.497 に答える