Использование ярлыка для перенаправления в контроллере

У меня есть следующий UrlMapping

"404"(controller:"home", action:"index")

Я могу перенаправить контроллер на страницу 404, используя:

redirect controller:"home", action:"index"

Есть ли способ использовать отображение в редиректе вместо написания контроллера и действия, т.е. что-то вроде redirect("404")?


person confile    schedule 19.01.2015    source источник


Ответы (1)


Начиная с Grails 2.3, перенаправление можно выполнить в UrlMappings, как показано ниже:

"/someAction"(redirect : [controller: 'home', action: 'index'])

См. здесь альтернативные способы.

ОБНОВЛЕНИЕ:
Чтобы использовать сопоставление с контроллера, лучшей альтернативой было бы использование namedMappings:

// UrlMappings
static mappings = {
    name handle404: "404" {
        controller = 'home'
        action = 'index'
    }
}

//controller
redirect(mapping: 'handle404')
person dmahapatro    schedule 19.01.2015
comment
Я хочу перенаправить в контроллер, а не в UrlMapping. - person confile; 19.01.2015
comment
Вы можете попробовать использовать именованные сопоставления, как показано в обновлении выше. - person dmahapatro; 19.01.2015