ユーザー、プロファイル、およびプロフェッショナル詳細モデルを含むフィールドを持つネストされたフォームがあります。ユーザーには 1 つのプロファイルがあります。プロファイルには、多くの専門的な詳細があります (ファイル フィールドとしてのドキュメントと説明テキスト フィールドを含みます)。
ここで直面している問題は、これら 3 つのモデルのネストされた形式であるプロファイル ページを更新しているときです。新しい専門的な詳細を追加してフォームを送信すると、古い専門的な詳細は nil になり、専門的な詳細の新しいオブジェクトが作成されます。パラメータはこのようになります
{"utf8"=>"✓", "_method"=>"patch","authenticity_token"=>"+pPcQC1hVJ+u0NS+ApOJbfwGG4NCBkURUA+BZ4ZaTMpMKQihrymC7aVl59D89SnGxt08kCMItqph2yXkOp1WsQ==",
"user"=>
{"dob"=>"1944-06-07",
"name"=>"Etikazzz",
"tag_list"=>"",
"profile_attributes"=>
{"gmc_number"=>"",
"phone_number"=>"919999999999",
"description"=>"hellloo",
"job_description"=>"Engineer1",
"professional_details_attributes"=>
{"0"=>{"description"=>"fg", "id"=>"139"},
"1"=>
{"document"=>
#<ActionDispatch::Http::UploadedFile:0xbdd3d160
@content_type="application/pdf",
@headers=
"Content-Disposition: form-data; name=\"user[profile_attributes][professional_details_attributes][1][document]\"; filename=\"pdf-sample.pdf\"\r\nContent-Type: application/pdf\r\n",
@original_filename="pdf-sample.pdf",
@tempfile=#<File:/tmp/RackMultipart20150722-2984-onumi8.pdf>>,
"description"=>"sd"}},
"id"=>"74"}},
"commit"=>"Complete Profile",
"controller"=>"profiles",
"action"=>"complete_profile"}
"0"=>{"description"=>"fg", "id"=>"139"},
これは古いプロの詳細オブジェクトです。User を更新すると、ドキュメント パーツは nil になります。この場合、以前に保存されたドキュメントが nil になるのはなぜですか?