Вложенная форма не работает с has_many - PullRequest
0 голосов
/ 12 сентября 2011

У меня есть модель Заказать

class Order < ActiveRecord::Base
  has_many :order_details, :class_name => "OrderDetail"
  accepts_nested_attributes_for :order_details
end

Когда, на мой взгляд, я пытаюсь построить вложенную форму

<%= semantic_form_for @order do |f| %>
    <%= f.inputs :name => "Detail", :for => :order_detail do |od| %>
    <%= od.input :shoe_id, :collection => Shoe.all.map{|s|[s.article_number,s.id]}  %>
    <%= od.input :size_id, :collection => Size.all.map{|s|[s.number,s.id]} %>
    <%= od.input :color_id, :collection => Color.all.map{|c|[c.name,c.id]} %>
    <%= od.input :quantity %>
  <%- end -%>
<%- end -%>

Это работает. Но используя

:for => :order_details

нет. Ничего не рендерит.

== решено !!

Я нашел решение.

@order.order_details имеет значение emtpy, поэтому nested_form не отображается.

запись в контроллере:

@order.order_details.build

Ответы [ 3 ]

0 голосов
/ 14 сентября 2011

Я нашел решение.

@order.order_details is emtpy so no nested_form is rendered.

запись в контроллере:

@order.order_details.build

сделает визуализацию корректно

0 голосов
/ 01 декабря 2011

Я нашел решение.

@order.order_details имеет значение emtpy, поэтому nested_form не отображается.

запись в контроллере:

@order.order_details.build
0 голосов
/ 12 сентября 2011

fields_for используется для рендеринга вложенных атрибутов, я думаю, что следующие должны работать

<%= semantic_form_for @order do |f| %>
   <%= f.fields_for :order_details do |od| %>
   <%= od.input :shoe_id, :collection => Shoe.all.map{|s|[s.article_number,s.id]}  %>
   <%= od.input :size_id, :collection => Size.all.map{|s|[s.number,s.id]} %>
   <%= od.input :color_id, :collection => Color.all.map{|c|[c.name,c.id]} %>
   <%= od.input :quantity %>
<%- end -%>

<% - конец -%>

и мы можем создать несколько вложенных записей с помощью fields_for помощника смотри рельсы литые

http://railscasts.com/episodes/196-nested-model-form-part-1

http://railscasts.com/episodes/197-nested-model-form-part-2

...