0

次の場合、ネストされたフォームのパラメータを取得する際に問題が発生します。

私はこれらの3つのネストされたモデルを持っています:

ミーティング:

class Meeting < ActiveRecord::Base
 has_many :participants
end

参加者:

class Participant < ActiveRecord::Base
 belongs_to :meeting
 has_many :connections
end

および接続:

class Connection < ActiveRecord::Base
 belongs_to :participant, :foreign_key => 'connected_participant_id'
end

そしてこれらのルート

resources :meetings do
    resources :participants
end

resources :participants do
    resources :connections
end

参加者を作成し、次のような会議に直接追加するためのフォームを作成しました。

ビュー >会議/ショー

= link_to 'Add current user to meeting', new_meeting_participant_url(@meeting)

ビューで>参加者/新規

= form_for [@meeting, @participant] do |p|
    *form details*

作成するとparams[:meeting_id]を正常に受信しますが、次の構成で参加者間の接続を作成するときに同じことを行うと、必要なparamsを取得できません

同じビューで>会議/ショー

- @meeting.participants.each do |participant|
    = link_to new_participant_connection_url(participant)

そして再びフォームビュー>接続/新規

= form_for [@participant, @connection] do |c|

デバッグすることで、必要なparams [:participant_id]が設定されていないことに気付きました。

誰かが私の問題を手伝ってくれませんか?私は本当にここで立ち往生しています。

4

1 に答える 1

2

たぶん、ActiveRecord :: NestedAttributes ::ClassMethodsaccepts_nested_attributes_forを見てください。

于 2010-12-29T22:53:29.677 に答える