您没有将表单和输入助手与 ActiveRecord 模型结合使用。相反,您正在使用_tag
以生成哑表单结尾的表单助手。
我假设 website_links 是一个 ActiveRecord 模型。
要创建更智能的表单,在这种情况下,可能需要获取所有这些 website_links 的父对象。这样,所有这些网站链接都有一个共同的父级可供参考。
在这种情况下,让我们假设有一个名为的模型Website
将充当父模型。本网站has_many :website_links
,当然还有 WebsiteLink belongs_to :website
。
让我们为调用Website
url 时要呈现的模型创建一个表单。为方法website/45/edit
生成的默认代码保留在.update
website_controller
<%= form_for @website do |f| %>
<%= f.input_field :website_name %>
<%= f.fields_for :website_links do |subform| %>
<%= subform.object.link_name %>
<%= subform.check_box :checked %>
<% end %>
<%= f.submit %>
<% end %>
此外,将此行添加到Website
模型中:
accepts_nested_attributes_for :website_links, allow_destroy: true
这允许网站模型为相关的 website_links 获取参数并更新这些链接。
请注意,我尚未测试此代码,它可能不适合您的需求。也许您还需要添加和删除链接。在这个RailsCast中也可以找到一些很好的解释。