我有一个公司模型,其中包含has_many
地址和许多电话。
地址belong_to
公司和电话。
我的问题是我不明白如何知道edit
公司的特定地址和电话。
在我的edit
操作中,我调用特定记录并将其分配给一个实例变量(即@address = 一些范围搜索我想要的特定地址),然后在我fields_for
引用这个孩子的属性,例如:
<%= f.fields_for :addresses, @address do |address| %>
A)我不确定这是否是这样做的方法。关于如何访问父母的特定孩子进行编辑的文档很少。
B)虽然如果update
成功,这可以正常工作,但当它失败时,我render :edit
的视图会显示带有父母当前孩子的附加字段(我在我的edit
操作中指定的那个 + 另一个孩子 - 似乎是下一条记录)。
所以基本上,我的表单在render :edit
调用时扩展了两个孩子。奇怪的。
这有什么关系?嵌套属性如何工作?有没有更好的方法来管理具有多个关联模型的表单?
谢谢。