2011-09-21 20 views
41

Estoy tratando de definir la acción "savenew" en el controlador de admin/fotógrafos.¿Cómo se define la acción con la forma simple?

He intentado esto:

<%= simple_form_for(:photographer_savenew, :action => 'savenew', :id => params[:id], :multipart => true) do |f| %> 

Pero la acción en forma absoluta, es /admin/photographers

cuando debería ser: /admin/photographers/savenew

+0

¿Está el espacio de nombres del controlador/ruta? –

+0

¿Te refieres a: namespace: admin do resources: fotógrafos do colección do post: savenew end end end –

+0

No, quiero decir [esto] (http://edgeguides.rubyonrails.org/routing.html#controller-namespaces- y enrutamiento) y/o poner la subclase 'ActionController' (su controlador) en un módulo (vea [aquí] (http://accentuate.me/blog/?p=12), no puedo encontrar el enlace Normalmente me refiero a: lo siento :( –

Respuesta

116

¿Existe una razón por la que no se esté usando REST ¿para esto? Haría su vida mucho más fácil y requiere mucho menos código. Si está configurado para usar esta acción personalizada, deberá especificar la url y probablemente el método:

<%= simple_form_for @photographer, :url => savenew_photographers_path, :method => :post ... # etc 
+2

No fue claro al leer la documentación de la forma simple qué params simple_form_for tomó. Gracias para incluirlos arriba! – thatmiddleway

Cuestiones relacionadas