On Sun, Mar 1, 2009 at 5:21 AM, tashfeen.ekram <[email protected]> wrote: > > i am using link_to to make links. it is gnerating urls relative to the > path of the page. how do i make absolute urls. i tried using only_path > but it does nto seem to work.
When you are e.g. in http://www.mysite.com/test/sub/hello (controller: 'test/sub' ; action: 'hello') and want to link to: http://www.mysite.com/home (controller: 'home' ; action: 'index') One way to do it is to use: link_to 'home', '/home' this results in: <a href="/home">Home</a> (which is relative to root ('/')) using: link_to 'home', 'home' results in: <a href="home">Home</a> (which the browser translates into http://www/mysite.com/test/sub/home and is not what I wanted) If you want to use it with a reference to the /home controller, use: link_to 'Home', :controller => '/home' >From the api.rubyonrails.org documentation for url_for : ++++ If the controller name begins with a slash no defaults are used: url_for :controller => '/home' In particular, a leading slash ensures no namespace is assumed. Thus, while url_for :controller => ‘users‘ may resolve to Admin::UsersController if the current controller lives under that module, url_for :controller => ’/users‘ ensures you link to ::UsersController no matter what. ++++ HTH, Peter --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---

