我与链接框有多对多的关系,我想将这些模型合并到一个表单中,以便我可以从同一页面进行更新。我真的很难让 check_box 甚至显示我的数组的所有元素 - 我已经搜索了网络并且整天都在研究这个,我发现很难应用我正在阅读的信息我的问题。我对 RoR 也非常陌生,而且我一直在关注一些过时的视频教程(2.0 之前),所以为我的代码道歉。到目前为止,我已经让它只输出数组中的一个密钥对(最后一个) - 尽管在表单之外,教程中使用的代码完全按照它应该的方式工作。不过那用处不大!Host 是主要表单所针对的模型,而 Billing 是我试图添加到表单中的外部模型。
这是教程中表格之外的代码:
<% for billing in @billings -%>
<%= check_box_tag('billing_title[]', billing.id, @host.billings.collect
{|obj| obj.id}.include?(billing.id))%> <%= billing.title %><br />
<% end -%>
我只需要知道如何使它在表单中工作。这是前面提到的代码,它只在遍历它们后检索最后一个数组密钥对:
<% f.fields_for :billings do |obj| %><br />
<%= check_box_tag('billing_title[]', billing.id, @billings.collect
{|obj| obj.id}.include?(billing.id))%> <%= billing.title %><br />
<% end %>
调试(@billings):
---
- !ruby/object:Billing
attributes:
title: Every Month
id: "1"
attributes_cache: {}
- !ruby/object:Billing
attributes:
title: 12 Months
id: "2"
attributes_cache: {}
- !ruby/object:Billing
attributes:
title: 6 Months
id: "5"
attributes_cache: {}
任何帮助都非常感谢。