2016-11-24 12 views
0

ネストされた属性も処理するフォームに問題があります。 親モデル "meeting"は、子モデル "invitation"のネストされた属性を受け入れます。会議の招待状は1つだけ送信することができますが、これはオプションです。ネストされた属性のためのRailsフォームは、拒否された場合にビルドを破棄する必要があります。

会議のためのモデルが含まれています:

has_one :invitation, :dependent => :destroy 
    accepts_nested_attributes_for :invitation, :reject_if => proc { |a| a[:user_id].blank? }, :allow_destroy => true 

問題がビュービュー/会議/ _form.html.erbです。私は新しい、表示し、編集するビューの会議や招待のためのすべての属性を処理しようとします。 私は、ユーザーが1つ前にそこに私は

<%= f.fields_for :invitation, @meeting.invitation ||= @meeting.build_invitation do |ff| %> 

を置くしかし、私は、会議を編集すると、招待状が空白だった(そうだった時に、これは私にエラーを与えられてhasnt時に招待状を追加できるようにしたいので拒否) "新しい関連する招待状を保存できませんでした。"

私は間違っていますか?

+0

にビューの行を変更して実行しましたか?私に仕事をシンプルに – inye

答えて

0

は、それはあなたがこの宝石https://github.com/nathanvda/cocoonを参照してください

<%= f.fields_for :invitation, Invitation.where(meeting_id: @meeting.id).first_or_initialize do |ff| %> 
関連する問題