Rails关联 – 如何将'has_many'对象添加到'所有者'

在我的应用程序中, user有很多score_cardsscore_card属于user

问题是,每当我创build一个新的score_card ,即ScoreCardsController.create被调用时,如何将这个新创build的score_card添加到current_user (我正在使用devise,所以current_user是一个有效的User对象)。

 current_user.score_cards << score_card 

要么

 score_card.user = current_user score_card.save 

使用关联构build器方法:

 current_user.score_cards.build(params[:score_card]) 

另外build你可以使用createcreate! 如果你不关心控制器中的validation。

我要把这个扔在那里,以防有人正在寻找一种方法来添加多个对象到关联的对象:

 score_cards = ScoreCard.all current_user.score_cards << score_cards 

不需要current_user.save