Module Merb::Router::Resources
In: lib/merb-core/dispatch/router/resources.rb

Methods

Public Instance methods

Behavior#resource is a route helper for defining a singular RESTful resource. It yields to a block for child routes.

Parameters

name<String, Symbol>:The name of the resource.
options<Hash>:Overides and parameters to be associated with the route.

Options (options)

:namespace<~to_s>: The namespace for this route. :name_prefix<~to_s>:

  A prefix for the named routes. If a namespace is passed and there
  isn't a name prefix, the namespace will become the prefix.

:controller<~to_s>: The controller for this route

Block parameters

next_level<Behavior>:The child behavior.

Returns

Array:Routes which define a RESTful single resource.

Examples

 r.resource :account # will result in the typical RESTful CRUD
   # shows new resource form
   # GET     /account/new                :action => "new"

   # creates resource
   # POST    /account/?(\.:format)?,     :action => "create"

   # shows resource
   # GET     /account/(\.:format)?       :action => "show"

   # shows edit form
   # GET     /account//edit           :action => "edit"

   # updates resource
   # PUT     /account/(\.:format)?       :action => "update"

   # shows deletion confirmation page
   # GET     /account//delete         :action => "delete"

   # destroys resources
   # DELETE  /account/(\.:format)?       :action => "destroy"

You can optionally pass :namespace and :controller to refine the routing or pass a block to nest resources.

  r.resource :account, :namespace => "admin" do |account|
    account.resources :preferences, :controller => "settings"
  end

:api: public

Behavior#resources is a route helper for defining a collection of RESTful resources. It yields to a block for child routes.

Parameters

name<String, Symbol>:The name of the resources
options<Hash>:Ovverides and parameters to be associated with the route

Options (options)

:namespace<~to_s>: The namespace for this route. :name_prefix<~to_s>:

  A prefix for the named routes. If a namespace is passed and there
  isn't a name prefix, the namespace will become the prefix.

:controller<~to_s>: The controller for this route :collection<~to_s>: Special settings for the collections routes :member<Hash>:

  Special settings and resources related to a specific member of this
  resource.

:identify<Symbol|Array>: The method(s) that should be called on the object

  before inserting it into an URL.

:keys<Array>:

  A list of the keys to be used instead of :id with the resource in the order of the url.

:singular<Symbol>

Block parameters

next_level<Behavior>:The child behavior.

Returns

Array:Routes which will define the specified RESTful collection of resources

Examples

 r.resources :posts # will result in the typical RESTful CRUD
   # lists resources
   # GET     /posts/?(\.:format)?      :action => "index"
   # GET     /posts/index(\.:format)?  :action => "index"

   # shows new resource form
   # GET     /posts/new                :action => "new"

   # creates resource
   # POST    /posts/?(\.:format)?,     :action => "create"

   # shows resource
   # GET     /posts/:id(\.:format)?    :action => "show"

   # shows edit form
   # GET     /posts/:id/edit        :action => "edit"

   # updates resource
   # PUT     /posts/:id(\.:format)?    :action => "update"

   # shows deletion confirmation page
   # GET     /posts/:id/delete      :action => "delete"

   # destroys resources
   # DELETE  /posts/:id(\.:format)?    :action => "destroy"

 # Nesting resources
 r.resources :posts do |posts|
   posts.resources :comments
 end

:api: public

Protected Instance methods

[Validate]