【发布时间】:2020-02-11 10:13:35
【问题描述】:
class Employee < ApplicationRecord
has_many :subordinates, class_name: "Employee", foreign_key: "manager_id"
belongs_to :manager, class_name: "Employee", optional: true
accepts_nested_attributes_for :subordinates
end
如何在控制器中为上述深层嵌套关联创建employee_params。
def employee_params
params.require(:employee).permit(:name, :roll_no, subordinates_attributes: [:name, roll_no, :subordate_attributes:[]......])
end
【问题讨论】:
-
澄清一下,从用户体验的角度来看......最终用户创建多个员工并在将整个事情提交并提交到服务器之前将他们相互分配?我不禁觉得这使 UI 过于复杂......你将如何处理验证错误......等等
-
我没有使用它来创建员工。其目的不同。
-
好吧,同样的问题仍然存在......只需将我的评论中的
employee替换为您尝试创建的任何内容。只是试图帮助澄清目的,因为在这种情况下删除accepts_nested_attributes_for和permit(:name, :roll_no, :manager_id, subordinate_ids: [])似乎会更简单。
标签: ruby-on-rails associations