2017-01-24 1 views
0

Я пишу sailsJs API, и мне нужно связывать следующие 2 маршрутов к одному действию контроллера:Может ли два маршрута использовать одно и то же действие контроллера в SailsJs?

'GET /user/count': 'UserController.getUserCount', 
'GET /user/count/:role': 'UserController.getUserCount', 

И в действии, я хочу, чтобы проверить, указано ли роль или нет, и отправить в общей сложности подсчет пользователя, если не указана роль, и дайте счету пользователя для роли, если указанная роль. Действие контроллера будет следующим:

getUserCount: function(request, response){ 
    var role = request.params.role; 
    var query = {}; 
    if (role != null){ 
     query.role = role; 
    } 
    User.count(query).exec(function countCB(error, count) { 
     console.log('There are ' + count + ' users.'); 
     response.json(count); 
    }); 
},  

возможно ли это реализовать?

+0

Да, это возможно. Вы сталкиваетесь с какой-либо проблемой? – Sangharsh

+0

Когда я использую маршрут без параметра запроса, он даст значение null для переменной 'role'? –

+0

Я не мог найти никакой документации или обсуждения по этому вопросу. вот почему я спросил. спасибо btw –

ответ

3

Да, это разрешено.

Нет проблем с привязкой нескольких маршрутов к одному и тому же действию контроллера.

Смежные вопросы