如何通过关联控制器在rails中保存多个?

问题描述:

我有一个Projects模型和User模型。我想在这些模型之间建立has many through association。现在我的要求是我想列出multiselect下拉列表中的所有用户,以projects/new的形式,通过这个我想在创建项目时分配属于该项目的所有用户。同时在users/new表单中创建新用户时,我想列出multiselect下拉列表中的所有projects。在这里,Projects_controller/create动作中的控制器逻辑应该是什么,类似地,Users_controller/create动作中的逻辑应该是什么,以便我可以保存这些在控制器中有多个关联?如何通过关联控制器在rails中保存多个?

使用类似

@user = User.create(...) 
@projects = params[:projects].map{|k,v| Project.find(k)} 
@user.projects << @projects