私のアプリでは、user
には多くのscore_cards
があり、score_card
はuser
に属しています
問題は、新しいscore_card
を作成するたびに、つまりScoreCardsController.create
が呼び出されたときに、新しく作成したscore_card
をcurrent_user
に追加するにはどうすればよいですか(私はdeviseを使用しています)なので、current_user
は有効なUser
オブジェクトです)。
current_user.score_cards << score_card
OR
score_card.user = current_user
score_card.save
アソシエーションビルダーメソッドを使用します。
current_user.score_cards.build(params[:score_card])
build
の代わりに、コントローラでの検証を気にしない場合は、create
またはcreate!
を使用できます。
関連付けられたオブジェクトに複数のオブジェクトを追加する方法を誰かが探している場合に備えて、これを捨てます。
score_cards = ScoreCard.all
current_user.score_cards << score_cards
Current_user.saveは不要