Llamando métodos

hola de nuevo repasando mi código me di cuenta d elo siguiente

tengo un formualrio en la vista new

<% form_for (@empresa), :url=>{:controller =>:empresas, :action =>
:crea} do |f| %>

...

y este no me lama a buscar, sino que busca el metodo update.
porque??? y como puedo cambiarlo.
espero me puedan ayudar
gracias y saludo


<%= f.submit "Aceptar" %> ...

cuando le doy al botón aceptar me va a buscar la accion crea

y cuando queito esta linea :url=>{:controller =>:empresas, :action =>
:crea}
va al metodo create y todo bien.

luego tengo en otro controlador en la vista show lo siguiente

<% form_for (@mercado), :url => {:controller => :empresas, :action =>
“buscar”} do |f| %>

Los mercados que tenemos son:
<%#= collection_select (“mercados”, “id”, @mercado, :id, :nombre,
{:prompt => ‘Seleccione mercado’})%>



<%= f.submit "Aceptar" %>

<% end %>

Has mapeado la ruta en el routes.rb??

El 1 de agosto de 2008 14:17, Maite
Piedra<[email protected]

escribió:

Emili Parreño wrote:
si, tengo lo siguiente

map.resources :mercados, :member => {:buscar => :get}

comete en metodo update y me sigue preguntando por el

gracias jaunjo, ya lo resolvi en realidad no era el reuter, sino que me
faltaba poner algo en el form_for

<% form_for :mercado, @mercado ,:url=>{:action => ‘asignar’ } do |f| %>

Los mercados que tenemos son:
<%= collection_select (“mercados”, “id”, @mercado, :id, :nombre,
{:prompt => ‘Seleccione mercado’})%>



<%= submit_tag "Aceptar" %>

me faltaba :mercado y ya busca la acion asignar.

muchas gracias a todos.

si, tengo lo siguiente

map.resources :mercados, :member => {:buscar => :get}

Como ves, tienes el método buscar mapeado como accesible por get, y
estas
enviando el formulario por post(la opción por defecto de form_for), así
que
una de las dos cosas tienes que modificarla, o mapeas buscar a post o
envias
el formulario por get.