1

我有以下代码在运行时创建/删除表 project_users 上的记录,使用具有多个直通关系,这工作正常。

@project.users = @account.users.find(params[:users_ids])

但是,我现在需要在这个名为 role_id 的中间 project_users 表上设置第三个外键值。

是否有任何建议可以与上面的代码同时有效地设置 role_id。

我想出了几个解决方案,例如下面的一个,但是如果只需要更新,我不喜欢删除所有记录的想法。

  users = @account.users.find(params[:users_granted].keys)
  @project.users = []
  users.each do |user|
    @project.project_users.create(:user_id => user.id, :project_role_id => params[:users_granted][user.id.to_s])
  end

任何想法/建议都会受到欢迎,我很可能以完全错误的方式思考这个问题!

谢谢,斯科特

4

0 回答 0