mardi 17 mars 2015

Action Controller error. Url Generation error. No route matches

I'm working through the 'Ruby on rails 3 essential training" on lynda.com and am having an issue while generating my server. So far I have a subjects_controller.rb, linked to my views folder, to the file: list.html.erb My error when trying to start the server is:



No route matches {:action=>"show", :controller="subjects", :id=>1}


In my list.html.erb file, I have written the code,



<td class="actions">
<%= link_to("Show", {:action => 'show', :id => subject.id}, :class => 'action show') %>
<%= link_to("Edit", '#', :class => 'action edit') %>
<%= link_to("Delete", '#', :class => 'action delete') %>
</td>


My subjects_controller.rb looks like:



class SubjectsController < ApplicationController

def list
@subjects = Subject.order("subjects.position ASC")
end


end


I have double checked to make sure I have everything written the same as the instructor but there seems to be a missing link. Any ideas? If I totally cut out the action:



<%= link_to("Show", {:action => 'show', :id => subject.id}, :class => 'action show') %>


Then the server starts up. There must be a problem here but I'm not sure what it is. Also when the instructor inputs "link_to" on his text editor, the txt turns a different color and mine does not. Same thing with his "@" instance variable. Mine doesn't change color. Not sure if this means anything either. Thanks for any input!


Here is my config/routes.rb file



Rails.application.routes.draw do
root :to=>"demo#index"
get 'demo/index'
get 'demo/hello'
get 'demo/other_hello'
get 'subjects/list'
end

Aucun commentaire:

Enregistrer un commentaire