ruby-on-rails - fields_for 不渲染 - rails 3

标签 ruby-on-rails nested-forms fields-for

最后为了一个新项目转移到 Rails 3 并且已经遇到了一个新手问题。

尝试做一个简单的嵌套表单。

2 个模型:列表和任务

列出型号

class List < ActiveRecord::Base
  has_many :tasks, :dependent=>:destroy
  accepts_nested_attributes_for :tasks, :reject_if => lambda { |a| a[:name].blank? }
end

任务模型
class Task < ActiveRecord::Base
  belongs_to :list

end

列表 Controller
def new
   @list = List.new
   3.times{ @list.tasks.build }
end

列表/new.html.erb
<% form_for :list, :url=>{:action=>"create"} do |f| %>
    <%= f.text_field :name, :class=>'big' %>
    <%= f.label :name, "ex: Today's Todos, Christmas List" %>

    <% f.fields_for :tasks do |builder| %>
        <p>
            <%= builder.label :name, "Task" %>
            <%= builder.text_field :name %>
            <%= builder.check_box :_destroy %>
        </p>
    <% end %>

    <p><%= submit_tag "Create List", :id => "submit", :name => "submit", :class => "form_submit", :disabled => false, :disable_with => "Please wait..." %></p>

<% end -%>

使用 调试@list 我可以看到我在 Controller 中创建的 3 个任务,但它 fields_for 不会呈现。

有任何想法吗?

最佳答案

在 rails 3 中,你应该使用 <%=而不是 <%form_forfields_for .看看是否有帮助。

关于ruby-on-rails - fields_for 不渲染 - rails 3,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4414934/

相关文章:

ruby-on-rails - 无法批量分配 protected 属性 : category_ids

jquery - 我的 .on() 的行为类似于 .bind(),而不是 .live()

jquery - Zurb 基金会正在让我的 Assets 加载两次

ruby-on-rails - Rails 在 fields_for 内部构建 fields_for 一次

ruby-on-rails-4 - 创建交易时过滤掉不必要的fields_for记录

ruby-on-rails - Rails Controller 中未定义的方法呈现 - 尝试使用 200 状态代码响应 Sendgrid

mysql - 正确使用存储过程动态创建图表吗?

ruby-on-rails-3 - Rails 3fields_for-排序顺序丢失

ruby-on-rails - 选择后的 ActiveRecord 计数

sql - 对于 PostgreSQL 表来说多大算太大?