Hi,
I’m new in RoR, I need some help in the following situation:
I have 2 controllers, clinica and consultas.
Clinica is my default controller.
On /views/clinica, I have the index.html.erb default of my aplication, and I have there the command:
<%= button_to “Read More”, new_consulta_path, :class=>“icon icon-arrow-right button”, %>
on the routes.rb I have:
Clinica::Application.routes.draw do
resources :clinica
resources :consultas
on /views/consultas/new.html.erb I have a form, if I write the URL “http://localhost:3000/consultas/new” I get the form without problems.
The problem here is that when I click on the button “Read More” (on the index default of my application on Clinica) I get the error “No route matches [POST] “/consultas/new””. I can’t understand what is the mistake I’m doing.
Does anyone know what is happening?
Any help is welcome!
Thank you,
Rita Ferreira
on the routes.rb I have:
Clinica::Application.routes.draw do
resources :clinica
resources :consultas
on /views/consultas/new.html.erb I have a form, if I write the URL “http://localhost:3000/consultas/new” I get the form without problems.
The problem here is that when I click on the button “Read More” (on the index default of my application on Clinica) I get the error “No route matches [POST] “/consultas/new””. I can’t understand what is the mistake I’m doing.
button_to does a post request by default. if you add a :method => :get option to it then it should work
Fred
Hi,
I'm new in RoR, I need some help in the following situation:
Hi, Rita, welcome!
I have 2 controllers, clinica and consultas.
Clinica is my default controller.
On /views/clinica, I have the index.html.erb default of my aplication, and I have there the command:
<%= button_to "Read More", new_consulta_path, :class=>"icon icon-arrow-right button", %>
The issue here is that button_to automatically generates a form with a submit button. The default method for forms in "POST" (which is why you're seeing that in the routing error below.
Take a look at the page source for this view to see what is being generated.
The docs for button_to are at: ActionView::Helpers::UrlHelper
You can change the method used by passing in the :method => :get option on that call. The other thing you might look at is using link_to instead of button_to, and making it look like a button with css classes. (It looks like you're using twitter bootstrap, which does this pretty easily.)
Hi Fred,
Thanks a lot, it worked
Sexta-feira, 23 de Agosto de 2013 18:48:28 UTC+1, Frederick Cheung escreveu:
Hi tamouse,
I tried it with button_to with the ‘tag’ :method => :get and I got no error!
Then I decided to use link_to and I got success too!
Thank you veryyyy much
Sexta-feira, 23 de Agosto de 2013 19:17:40 UTC+1, tamouse escreveu: