我有一个用户创建约会的应用程序,每个约会都有一组通过 Appointment_Skills 表附加到他们的技能。在创建后,我想为每个约会附加大约 50 种左右的技能。因为约会表单太大并且要跟踪的事情太多,我让用户使用最小表单创建约会,然后重定向到他们可以访问整个约会的编辑页面。我正在使用嵌套属性来更新编辑表单中的 Appointment 和 Appointment_Skills。
Appointment
has_many :skills, through: :appointment_skills
has_many :appointment_skills
accepts_nested_attributes_for :appointment_skills
end
AppointmentSkill
belongs_to :skill
belongs_to :appointment
end
Skill
end
如果我继续创建一些 AppointmentSkills,我可以使用我的编辑表单来更新它们的属性,但我不确定如何在创建父级后自动创建它们。
我考虑过首先计算所有技能和 ID,然后使用 after_create 回调创建所有具有技能 ID 和约会 ID(刚刚创建的约会)的 AppointmentSkills。
这可能吗?这是一种奇怪的做法吗?