routes.rb noob question...

Hey Everyone,

I'm wondering if the statement below are redundant? Once you define the resources for a particular controller, that should be it right? I'm assuming all I need is the second statement below.

map.resources :customers map.resources :customers, :has_many => :accounts

Thanks!

Chris

Yes all you need is the second statement. If you have both try running the command rake routes from the rails root directory it will show you what the two would do.(Or the one if you remove the top one.) THe second line could also be written like

map.resources :customers do |customer|   customer.resources :accounts end

You would need that if you wanted to add a member or collections route to accounts

Hey Freddy,

So I'm not sure if my routes file is setup correctly after your last comment. Would you mind taking a look at it?

ActionController::Routing::Routes.draw do |map|

  map.resources :customers, :has_Many => :accounts   map.resources :customers, :member => {:info_for_account_form => :post}

  map.resources :owners, :has_many => :accounts   map.resources :owners, :member => {:info_for_account_form => :post}

  map.resources :usertypes, :has_many => :accounts

  map.resources :accounts, :belongs_to => :owner   map.resources :accounts, :belongs_to => :customer   map.resources :accounts, :collection => {:auto_complete_belongs_to_for_account_customer_name => :post}   map.resources :accounts, :collection => {:auto_complete_belongs_to_for_account_owner_name => :post}

  # Install the default routes as the lowest priority.   map.connect ':controller/:action/:id'   map.connect ':controller/:action/:id.:format' end

Should look more like this:

map.resources :customers,    :member => { :info_for_account_form => :post },    :has_Many => :accounts map.resources :owners,    :member => { :info_for_account_form => :post },    :has_many => :accounts map.resources :usertypes,    :has_many => :accounts map.resources :accounts,    :belongs_to => [ :owner, :customer ],    :collection => { :auto_complete_belongs_to_for_account_customer_name => :post,                     :auto_complete_belongs_to_for_account_owner_name => :post }