これを返す POST メソッドがあります。
Request Parameters:
{"cm_test_ids"=>["1",
"8",
"9",
"10",
"11"],
"commit"=>"Create",
"authenticity_token"=>"WiBZQcZt2/Vi2RiFdFtaXnthClLsMubXe6sAhUzOPo8=",
"id"=>"1",
"cm_test_campaigns_object"=>{"cm_test_campaign_id"=>"1",
"comments"=>"",
"assigned_to_id"=>"6"}}
私のコントローラーアプリでは、次のような「cm_test_ids」を取得します。
@ids_selected = params[:cm_test_ids]
この時点では問題ありません。これらの ID (1,8,9,10,11) をリレーション テーブルに保存できますが、これを実行しようとすると、次のようになります。
@my_tests = CmTest.find(["id IN (?)", @ids_selected])
次のエラーが表示されます。
"Couldn't find all CmTests with IDs (0,1,8,9,10,11) (found 5 results, but was looking for 6)"
値「0」は存在しません。配列 @ids_selected を出力しましたが、表示されません。IDs 配列の最初の位置に常に「0」が追加される理由がわかりません。