Configuration Routing struct mapper
Create a group of routes that exposes actions for manipulating a collection of resources. A plural resource exposes URL patterns for the entire CRUD lifecycle (index, show, new, create, edit, update, delete), exposing a primary key in the URL for showing, editing, updating, and deleting records. If you need to generate routes for manipulating a singular resource without a primary key, see the resource mapper method.
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
| name | string | Yes | Camel-case name of resource to reference when build links and form actions. This is typically a plural word (e.g., posts). |
|
| nested | boolean | No | false | Whether or not additional calls will be nested within this resource. |
| path | string | No | [runtime expression] | Override URL path representing this resource. Default is a dasherized version of name (e.g., blogPosts generates a path of blog-posts). |
| controller | string | No | Override name of the controller used by resource. This defaults to the value provided for name. |
|
| singular | string | No | Override singularize() result in plural resources. | |
| plural | string | No | Override pluralize() result in singular resource. | |
| only | string | No | Limits the list of RESTful routes to generate. Can include index, show, new, create, edit, update, and delete. |
|
| except | string | No | Excludes RESTful routes to generate, taking priority over the only argument. Can include index, show, new, create, edit, update, and delete. |
|
| shallow | boolean | No | Turn on shallow resources. | |
| shallowPath | string | No | Shallow path prefix. | |
| shallowName | string | No | Shallow name prefix. | |
| constraints | struct | No | Variable patterns to use for matching. | |
| mapFormat | boolean | No | [runtime expression] | Whether or not to add an optional .[format] pattern to the end of the generated routes. This is useful for providing formats via URL like json, xml, pdf, etc. |
<cfscript>
mapper()
// With default arguments
.resources("admins")
// Point authors URL to controller at `controllers/Users.cfc`
.resources(name="authors", controller="users")
// Limited list of routes generated by `only` argument.
.resources(name="products", only="index,show,edit,update")
// Limited list of routes generated by `except` argument.
.resources(name="orders", except="delete")
// Nested resources
.resources(name="stories", nested=true)
.resources("heroes")
.resources("villains")
.end()
// Overridden `path`
.resources(name="blogPostsOptions", path="blog-posts/options")
.end();
</cfscript>