有没有办法通过表单访问多对多 ActiveRecord 关联中的单个元素?

问题描述

Ruby on Rails 专业人士您好!

一个项目中,我们使用 Ruby on Rails(版本 6.1.1),我们有一个数据库模型,其关联如屏幕截图 (Database UML with ActiveRecord Associations) 中所示。此 UML 图显示了 Ruby 中的三个模型,TaskUserTaskUser

UserTask一个 ID,task_id 作为外键(通过关联 belongs_to :task)和 user_id 作为外键(通过关联 belongs_to :user)。它还有一个与之链接的 ActionText,称为 Personal_note,根据 rubyonrails.org 上的指南,它具有关联 has_rich_text :personal_note

Task 具有 has_many :user_taskshas_many :users,through: :user_tasks 的关联。

User 具有 has_many :user_taskshas_many :tasks,through: :user_tasks 的关联。

我既无法使用当前用户定义特定的UserTask,也无法使用用户的当前任务定义特定的 UserTask。

在表单中,我们编辑任务的地方,我们还想更新当前用户的personal_note。但是保存时我收到以下错误

Unpermitted parameter: :user_task

我尝试了很多改变单数和复数,使用 where 条件和 where 结合 first 以及创建过滤元素的方法。虽然我无法解决这个问题,现在我不知道它是如何工作的(或者实际上,它根本没有办法工作?)。也许这里的其他人有想法。

您可以在 Github 中找到项目代码,它在它自己的分支中。

预先感谢您的任何建议。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)