7

Así que estoy construyendo una forma de carriles 3.1, utilizandorieles simple_nested_form_for fields_for número incorrecto de argumentos

<%= simple_nested_form_for(@person, :url => collection_url, :html=>{:multipart => true}) do |f| %> 
    <%= render :partial => "form", :locals => { :f => f } %> 
<% end %> 

pero esta línea en el parcial está causando el problema:

<h2>Badges</h2> 
<ul id="certifications"> 
// this following line is raising the error "wrong number of arguments (4 for 3)" 
<%= f.fields_for :certifications do |certification_form| %> 
    <%= render :partial => 'certification', :locals => { :f => certification_form } %> 
<% end %> 
</ul> 
<%= f.link_to_add "Add a Badge", :certifications %> 

Así que aquí está el modelo:

class Person < ActiveRecord::Base 
    has_many :certifications, :dependent=>:destroy, :order=>:position 
    has_many :certificates, :through=>:certifications 
    accepts_nested_attributes_for :certifications, :allow_destroy => true 
end 

El controlador está utilizando la joya del recurso heredado.

¿Qué pasa? Gracias por la ayuda.

+0

¿cuál es el error? – apneadiving

+1

número incorrecto de argumentos (4 para 3), vea el segundo fragmento de código :) – randomor

Respuesta

7

Estaba teniendo el mismo problema hasta que me di cuenta de que la gema está desactualizada con la versión en git. ¡Solo actualicé manualmente los archivos gem con los de git y el problema solucionado!

11

imorsi es correcta, esto es cómo lo hice:

joya "nested_form",: git => 'git: //github.com/ryanb/nested_form.git'

También eliminé y volví a empaquetar la gema, pero sospecho que no fue necesario. no te olvides de reiniciar tu servidor después de la instalación de la gema.

+0

hizo esto, movió js a '/ vendor/assets/javascripts /', '/ app/assets/javascripts/application.js' actualizados para incluir '// = require nested_form' y luego funcionó – ZMorek

-1

lo he intentado, pero no funcionó

así que terminé haciendo "bundle nested_form abierto" y copia pegada de github

Cuestiones relacionadas