Skip to content

Configuration

scope()

scope() — returns struct

Available in: mapper Category: Routing

Set any number of parameters to be inherited by mappers called within this matcher’s block. For example, set a package or URL path to be used by all child routes.

NameTypeRequiredDefaultDescription
namestringno—Name to prepend to child route names for use when building links, forms, and other URLs.
pathstringno—Path to prefix to all child routes.
packagestringno—Package namespace to append to controllers.
controllerstringno—Controller to use for routes.
shallowbooleanno—Turn on shallow resources to eliminate routing added before this one.
shallowPathstringno—Shallow path prefix.
shallowNamestringno—Shallow name prefix.
constraintsstructno—Variable patterns to use for matching.
$callstringnoscope
<cfscript>

mapper()
    // All routes inside will use the `freeForAll` controller.
    .scope(controller="freeForAll")
        .get(name="bananas", action="bananas")
        .root(action="index")
    .end()

    // All routes's controllers inside will be inside the `public` package/subfolder.
    .scope(package="public")
        .resource(name="search", only="show,create")
    .end()

    // All routes inside will be prepended with a URL path of `phones/`.
    .scope(path="phones")
        .get(name="newest", to="phones##newest")
        .get(name="sortOfNew", to="phones##sortOfNew")
    .end()
.end();

</cfscript>