Changing link_to link location slightly..


Basically I'm just wondering how I can change my link_to's location

At the moment I have a system with categories and tutorials, and the
categories have_many tutorials.
The link itself is like this:

<%= link_to 'Next lesson', @NextLesson, :controller =>
'categories', :id => (, :action => (@NextLesson) %>

I've set the controller etc because my routes.rb file handles the
routes like this:

map.connect 'categories/:id/tutorials/:action', :controller =>

So from this I figures the link would lead to: /categories/ID/
however it doesn't, it just leads to: /tutorials/ID

Does anyone know how I can change it from /tutorials/TUTID to /
categories/CATID/tutorials/TUTID ?

Thanks In Advance,


Assuming you're using REST (far better, IMO), although your map.connect
would make me think otherwise...

map.resources :tutorials,
  :controller => "categories"
  :path_prefix => "/category/:category_id",
  :name_prefix => "category_"

should yield /categories/
and category_tutorial as a named route, with a link something like this:

<%= link_to 'Next lesson',
category_tutorial_path(:category_id =>,
:id => @NextLesson) %>

I think, although your @NextLesson seems bizarre.

If that doesn't work, have you done a "rake routes >routes.lst"
then looked at your routes.lst to see what routing you actually have?
Rails will match the first route it finds given the inputs in the
specified order.

Adding your section into routes.rb seems to give me this error on
attempting to run the server:

unexpected tASSOC, expecting kEND

(dont know why the last post posted, I wasn't done yet)

Please note the last error was for the path:prefix line.

Also on your route list thing it gives me this error (about the colon
next to the path_prefix line):

unexpected ',' expecting kEND

(The server running also mentions then ',' but not in as much details.

This means it wont let me rake the routes or whatever to see the

Please Help,

Thanks In Advance,


map.resources :tutorials,
  :controller => "categories"
  :path_prefix => "/category/:category_id",

There should be a comma at the end of the second line after
"categories", my bad.