为什么我的嵌套表单不显示?

| 在Rails 3.1 RC1上运行并遵循此步骤。 一个用户可以有一个或多个电子邮件。我的电子邮件字段未显示在表单中。没有错误。 显示表单元素。但是没有输入字段。娜达我想念什么吗? 控制器:
def new
  @user = current_user

  #1.times do
    email = @user.emails.build
  #end
....
end
用户模型:
class User < ActiveRecord::Base
  has_many :emails, :dependent => :destroy
  accepts_nested_attributes_for :emails
....
end
电子邮件模式:
class Email < ActiveRecord::Base
  belongs_to :user
end
形成:
<%= form_for(@user, :url => users_path, :html => { :method => :post }) do |f| %>

    <ul>

      <li class=\"clearfix\">
        <%= f.fields_for :emails do |builder| %>
          <%= builder.label :email %>
          <%= builder.text_field :email %>
          <span>Note: Your email will not be publicly displayed</span>
        <% end %>
      </li>
....
    
已邀请:
        看起来Rails 3.1 RC中的
fields_for
语法已更改,如下所示: 我可以确认这一点。似乎fields_for的标题已更改为Rails 3.1rc: Ruby on Rails最新稳定版(v3.0.7):
 fields_for(record_or_name_or_array, *args, &block)
Ruby on Rails(v3.1rc):
 fields_for(record_name, record_object = nil, options = {}, &block)
现在可以使用以下功能:
    <%= f.fields_for :emails, :emails do |builder| %>
      <%= builder.label :email %>
      <%= builder.text_field :email %>
      <span>Note: Your email will not be publicly displayed</span>
    <% end %>
    

要回复问题请先登录注册