Grails URL Api Mapping вызывает неправильный контроллер
У меня есть два контроллера. PollController и api.PollApiController.
Мой PollController - просто обычный контроллер. API-контроллер наследует RestfulController:
class PollApiController extends RestfulController {
static responseFormats = ['json', 'xml']
PollApiController() {
super(Poll)
}
}
Вот мои URL-сопоставления:
class UrlMappings {
static mappings = {
"/$controller/$action?/$id?(.$format)?"{
constraints {
// apply constraints here
}
}
"/api/poll"(resources:'poll', controller:'pollApiController')
}
}
Моя проблема в том, что каждый раз, когда я делаю / api-Call grails, вместо PollApiController запускается PollController. Я могу проверить это, если я изменю PollController. Это первый раз, когда я работаю с RestfulController, что я делаю не так?
1 ответ
Когда вы отображаете на RestfulController
вам не нужно controller
параметр. Вместо, resources
должно быть установлено базовое имя вашего (Restful) контроллера.
"/api/poll"(resources: 'pollApi')
Для получения дополнительной информации см.: http://grails.org/doc/latest/guide/single.html