====== Resource url helpers ====== Let say you have a model called Article and you defined a route using: resources :articles Here is a list of url helpers you can use: # helper, HTTP verb, controller action resource(:articles) # GET => index resource(@article) # GET => show resource(:articles, :new) # GET => new resource(@article, :edit) # GET => edit resource(@article, :delete) # GET => delete resource(:articles) # POST => create resource(@article) # PUT => update resource(@article) # DELETE => destroy ** NOTE: ** Please notice the difference between @article (single form) and :articles (plural form) on the above examples. * @article (single form) : always as instance variable (prefixed with '@') * :articles (plural form) : always as symbol (prefixed with ':') If you have a nested route such as: resources :articles do resources :comments end Then the following url helpers are available to you: resource(@article, :comments) # GET => index (shows comments for @article) resource(@article, @comment) # GET => show resource(@article, :comments, :new) # GET => new resource(@article, @comment, :edit) # GET => edit resource(@article, @comment, :delete) # GET => delete resource(@article, :comments) # POST => create (creates new comment for @article object) resource(@article, @comment) # PUT => update (updates comment) resource(@article, @comment) # DELETE => destroy (deletes comment) These routes can be extended in a similar manner to use deeper nests if you need to, such as resource(@forum, @post, :comments).