0

複数のオカレンスを持つことができるイベントがあります (datetimes -- 残念ながら、コード内でオカレンスと綴りを間違えました) 動的に追加できます (Ryan Bates のすばらしいチュートリアル: http://railscasts.com/episodes/196のおかげです)。 -nested-model-form-part-1?view=asciicast ):

has_many :occurances, :dependent => :destroy
accepts_nested_attributes_for :occurance, :reject_if => lambda { |a| a[:when].blank? }, :allow_destroy => true'

 attr_accessible :occurances, :occurances_attributes, :occurance_id

次に、フォーム:

.control-group.occurance_fields
  = f.label "Date & Time", :class => 'control-label'
  .controls
    = f.fields_for :occurance do |o_form|
      = o_form.text_field :when, :class => 'datepicker'

event_controller の新しいメソッド:

 @event.occurances.build

現在、フォームを送信する際に問題があります:

Can't mass-assign protected attributes: occurance

追加する attr_accessible :occuranceと、次のエラーが発生します。

unknown attribute: occurance

ここで何が欠けていますか?同様の問題に関する他のいくつかの質問を見てきましたが、それらの解決策を私のプロジェクトに翻訳することはできません。

4

1 に答える 1

0
attr_accessible: occurance_ids

accepts_nested_attributes_for :occurances, :reject_if => lambda { |a| a[:when].blank? }, :allow_destroy => true'

編集:

:occurance_idは、:attr_accessibleでも無効です。これはhas_many関係であるため、外部キーはOccurancesテーブルにあります。

于 2013-02-15T20:05:39.110 に答える