Hi guys, I really thought I had this sorted, but I cant figure this out!
I'm building an app (ruby 1.9.3, rails 3.2.2).
The app has teams, and in my teams_controller I want to have a method
called apply_to_coach_team, with a form that allows you to apply to
coach a new team.
The problem is, every time I click the link to go to the form I get the
message:
Couldn't find Team with id=apply_to_coach_team
The app seems to be going to the teams#show method, and looking for a
team with the id above.
in routes.db I have:
match "/teams/apply_to_coach_team" => "teams#apply_to_coach_team", :as
=> :apply_to_coach_team
my teams_controller is just an empty method
def apply_to_coach_team
end
and my view is just a stub for now
<h1> apply to coach new team </h1>
My link to this page looks like this :
<%= link_to "apply to coach new team", apply_to_coach_team_path, class:
"btn btn-mini btn-action" %>
Can anyone tell me what simple mistake I'm making please!??
Run "rake routes" from the command line to see what the system
expects. Depending on the results from "rake routes", you probably
need to change your link to call the path method differently. Maybe
you need to call it passing in @team.id, or maybe the method should
have a different name.
For anyone else who's a bit rails rusty, and has forgotten this the
route to the new method has to go BEFORE the other routes created by
resources :teams
match "/teams/apply_to_coach_team" => "teams#apply_to_coach_team", :as
=> :apply_to_coach_team