Restfull custom actions

I am trying to add a custom restful action. I have try the following tutorial but stil get an error and not sure why Rails Routing from the Outside In — Ruby on Rails Guides, #35 Custom REST Actions - RailsCasts

Here what i am trying to do in my model customer

i have def the following

def friend     @customer = Customer.find(params[:id]) end Here my route

  resources :customers do       collection do         get 'friend'       end     end Here the link i try so far

http://localhost:3000/customers/friend http://localhost:3000/customers/1/friend I also try member but same error occurs. There error is follow

ActiveRecord::RecordNotFound in CustomersController#friend

Couldn't find Customer without an ID Thanks in advance

That probably means that params[:id] is nil for some reason. First check in development.log where it will show you the parameters passed in when you open the url. Then you will know whether the id is not being passed in or whether you are loosing it somewhere along the way. Next have a look at the Rails Guide on debugging to see techniques that you can use to debug the code.

Colin

I think you want "member" instead of "collection" in your route file. Collection is used when you don't have an id; member when you do. In your controller you are using the id, so I'm assuming that this is the URL you want: http://localhost:3000/customers/1/friend

Paul wrote in post #1072262:

I think you want "member" instead of "collection" in your route file. Collection is used when you don't have an id; member when you do. In your controller you are using the id, so I'm assuming that this is the URL you want: http://localhost:3000/customers/1/friend

Yeah thank to both of you, member was best and works now :smiley: