(Quick Reference)



A mutable multi-dimensional map (hash) of request (CGI) parameters.


To obtain a request parameter called id:

class BookController {
    def show() {
        def book = Book.get(params.id)

To perform data binding (see data binding in the user guide):

def save() {
    def book = new Book(params) // bind request parameters onto properties of book


The standard Servlet API provides access to parameters with the HttpServletRequest object. Although Grails provides the same capability through the request object, it goes a bit further by providing a mutable map of request parameters called params.

The params object can be indexed into using the array index operator or de-reference operator, so given the URL /hello?foo=bar you can access foo with

println params.foo

The params object can also be used to bind request parameters onto the properties of a domain class using either the constructor or the properties property:

def book = new Book(params)
book = Book.get(1)
book.properties = params

For further reading see data binding in the user guide.