代码之家  ›  专栏  ›  技术社区  ›  Patrick Oscity

Rails:为表单助手包含带有字段的索引

  •  3
  • Patrick Oscity  · 技术社区  · 16 年前

    <% 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>
    
    ...
    

    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
    

    1 回复  |  直到 16 年前
        1
  •  3
  •   Fred    16 年前

    字段\u f.fields_for 简单地 fields_for .