我为Recipes模型设置了一个表单,其中包含了accept_nested_attributes_for Ingredients。表格和保存工作正常,但是,我想检查数据库中每种成分的存在。该表格似乎正在为成分创建新的记录,即使它们已经存在于数据库中。
食谱和配料使用'has_many:through'关系相关。是否有一种干净的方法可以确保在提交表单时重复成分,但关系仍然存在?
答案 0 :(得分:0)
类似的问题可能会对此有所帮助,尽管解决方案不是那个合法的
Rails nested form on many-to-many: how to prevent duplicates?
答案 1 :(得分:0)
这是关于你如何从用户那里获取信息 - 你的表格是。 如果您在配方的新/编辑形式中有成分的多重选择输入,并且您在那里显示所有现有成分,用户可以选择现有成分,并且这些表格中的POST / PUT将具有现有成分'ID作为表单的一部分数据。这不会产生新的成分。