2つのスキャフォールドモデルのネストされたフォームを作成するにはどうすればよいですか?
多くのミッションがあるシラバスモデルがあります。以前は、ミッションを作成する唯一の方法は、シラバスのネストされたフォーム(Railscastで作成したもの)を使用することでした。昨日、ユーザーが自分でミッションを作成できるようにすることを決めたので、移行をスキップしながらミッションをスキャフォールディングし、既存のミッションモデルのすべてのコントローラーとビューを作成しました。
問題は次のとおりです。ミッションを単独で作成できるようになりましたが、シラバスのネストされたフォームからミッションを作成しようとすると、「#<\ Mission:0xb372ffc。>の未定義のメソッド`difficulty'」というエラーが表示されます。 Missionsスキーマで定義されていないMissions属性にシラバス属性を渡そうとしていると推測します。(難易度はシラバスのみの属性です)。
要約すると、ネストされたフォームは、ミッションのモデルしかない場合は「ビルダー」で機能しましたが、ミッションを単独で存在できるように足場を組んだ場合、ネストされたフォームを使用できませんでした。
これに影響を与える可能性のあるファイルが2つ以上あったため、要点を作成しました。 https://gist.github.com/2631734
ところで、これらは渡されるべきパラメータです
{"utf8"=>"✓",
"authenticity_token"=>"YxkzNmIJl0jBA467tdHP2zqNv22DgKrzSx+WCFgwKtk=",
"syllabus"=>
{"category"=>"Technology and Internet",
"difficulty"=>"Beginner",
"title"=>"missions testing",
"description"=>"deccrip",
"missions_attributes"=>
{"0"=>
{"_destroy"=>"false",
"title"=>"plz",
"content"=>"<p>\r\n\tdad</p>\r\n"
}
}
},
"commit"=>"Create Syllabus"
}