ruby-on-rails - rails : include index with fields_for form helper

标签 ruby-on-rails webforms

我正在尝试使用 fields_for 方法从一个表单构建两个模型。我的代码如下所示:

<% for scale in @event.scales %>
  <% f.fields_for "scale[]", scale do |scale_form| %>
    <p>
      Scale<br />
      <%= scale_form.label :name %>
      <%= scale_form.text_field :name %>
      <%= scale_form.label :price %>
      <%= scale_form.text_field :price %>
    </p>
  <% end %>
<% end %>

但不幸的是,输出的 html 缺少秤的 ID:

<p>
  Scale<br />
  <label for="event_scale__name">Name</label>
  <input id="event_scale__name" name="event[scale][][name]" size="30" type="text" />
  <label for="event_scale__price">Price</label>
  <input id="event_scale__price" name="event[scale][][price]" size="30" type="text" />
</p>

...

这是相应的 Controller 和模型:

class EventsController < ApplicationController
  ...

  def new
    @event = Event.new
    @providers = Provider.find(:all, :order => :name)
    3.times { @event.scales.build }
    respond_to do |format|
      format.html
    end
  end

  ...
end


class Event < ActiveRecord::Base
  has_many :scales

  ...
end

我做错了什么?

最佳答案

Fields_for 不是封闭表单对象的方法,因此将 f.fields_for 更改为简单的 fields_for

关于ruby-on-rails - rails : include index with fields_for form helper,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2433036/

相关文章:

javascript - 为什么 Chrome 会显示这些 (rails-jquery) 警报两次,而 Firefox 却不会?

jquery - 在不使用 Rails 中的 iframe 的情况下使用 jquery 在我的页面上显示另一个网站的内容

javascript - ruby on rails 中类别的四级 TreeView

c# - ASP.NET 响应 URL 重定向错误;从静态方法

c# - 下拉菜单 SelctIndexChange 未按预期工作

c# - 动态添加的 TableRows 不在 Postback 的 Rows 集合中

javascript - 将 link_to 从 View 传递到 javascript?

ruby-on-rails - 如何设置父应用程序模型和安装引擎模型之间的has_many关联?

javascript - ASP.NET Webforms - 根据 Javascript 中的验证器类型修改控件 CSS

asp.net - 我将使用什么事件来拦截和处理Webform页面中的所有运行时错误?