ryanb / nested_form ## ActionView :: Helpers :: FormBuilder的未定义方法`link_to_remove'

fab*_*res 2 ruby gem ruby-on-rails nested-forms nested-attributes

我对gem nested_form有一点问题。我有:

class Factura < ActiveRecord::Base
 attr_accessible :itemfacturas_attributes
 has_many :itemfacturas
 has_many :productos, :through => :itemfacturas
 accepts_nested_attributes_for :itemfacturas, :reject_if => lambda { |a| a[:descripcion].blank? }, :allow_destroy => true
Run Code Online (Sandbox Code Playgroud)

和ItemFactura类

class Itemfactura < ActiveRecord::Base
 attr_accessor :vu, :vt, :descripcion
 belongs_to :factura
 belongs_to :producto
Run Code Online (Sandbox Code Playgroud)

我在facturas / new视图中使用了gem来添加itemfacturas。

<%= f.fields_for :itemfacturas do |b| %>
        <%= render 'itemfacturas/itemfacturas', f: b %>
 <% end -%>
 <%= f.link_to_add "Agregar item", :itemfacturas %>
Run Code Online (Sandbox Code Playgroud)

部分是:

<%= f.number_field :cantidad, :min => 0, :value => 1 %>
<%= f.text_field :descripcion, :class => "desc_autocomplete" %>
<%= f.text_field :vu %>
<%= f.text_field :vt %>
<%= f.hidden_field :producto_id%>
<%= f.link_to_remove "Eliminar" %>
Run Code Online (Sandbox Code Playgroud)

但是我有这个错误:

Facturas中的NoMethodError#new

显示/Users/fabricioflores/desarrollo/facturacion/app/views/itemfacturas/_itemfacturas.html.erb,其中第7行出现:

未定义的方法“ link_to_remove”

如果我在包含link_to_remove的注释行中出现另一个关于link_to_add的错误

我遵循了https://github.com/ryanb/nested_form的步骤,但是没有用。我正在使用Rails 3.2.9和nested_form(0.3.1)

fab*_*res 5

好的,我解决了。我需要以事实/新形式提出

<%= nested_form_for @factura do |f| %>
Run Code Online (Sandbox Code Playgroud)

这是找不到link_to_add和link_to_remove的原因,因为它是另一个帮助器。