As far as I understand, you are trying to generate URLs with resource name "blog" when actual controller is named posts. So the correct path should be blogs_path (for your example) and not posts_path, and I think it's a good idea that you specify it always. I don't know if you can specify it globally.
But if it suits your need you can use :as. From rails guide: http://guides.rubyonrails.org/routing.html map.resources :photos, :as => "images" will recognize incoming URLs containing image but route the requests to the Photos controller Thanks, Abhinav -- अभिनव http://twitter.com/abhinav On Wed, Sep 9, 2009 at 4:25 AM, Perceptes <[email protected]> wrote: > > I have a route like this: > > map.resources :blog, :controller => 'posts' > > This seems to confuse form_for's model introspection when using this > syntax: > > form_for @post do |f| ... end > > When I go to a page that has that code, I get a NoMethodError: > > undefined method `posts_path' for #<ActionView::Base:0x103dd2030> > > I've discovered I can fix it by doing: > > form_for @post, :url => { :action = 'whatever-action-it-should-have- > been' } do |f| ... end > > Do I need to manually set the :url parameter like this every time I > use form_for or is there a way to get it to globally recognize my > altered named routes? > > Thanks in advance! > > > --~--~---------~--~----~------------~-------~--~----~ 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 -~----------~----~----~----~------~----~------~--~---

