在我的rails应用程序中,用户可以选择他们想加入“派对”的其他用户。我正在尝试将当前用户的ID与用户选择的ID合并。这是我试过的一种方式:
def party_params
params.require(:party).permit(:length, :game_id, user_ids: []).merge("user_ids" => ["user_ids"] + [current_user.id])
end
这回来了:
找不到拥有'id'的所有用户:(0,17)(找到1个结果,但是正在寻找2)
执行.merge(:user_ids => [current_user.id])
会导致仅使用当前用户创建聚会并删除所有选定的用户。
我也尝试将.merge移动到一个函数并在new上调用它,但这似乎也不起作用。
在我的模型中,一方has_and_belongs_to_many :users
和用户has_and_belongs_to_many :parties
任何帮助赞赏!谢谢。
我会做这样的事情:
def party_params
params.require(:party).permit(:length, :game_id, user_ids: []).tap do |p|
p[:user_ids] << current_user.id
end
end