Node.js Маршруты Компонентная архитектура - PullRequest
0 голосов
/ 17 апреля 2020

Мне нужен совет о том, как проектировать составную часть моего приложения node.js. Прямо сейчас он сконструирован так:

components
    admin
         admin.routes.js
         users
              users.routes.js
              users.controller.js
    user
         users.model.js
         users.controller.js
         users.routes.js

Вот код admin.routes. js

const router = require('express').Router();
const {permit} = require('./../../middleware');
const userRoutes = require('./users/user.routes');

router.use('/', permit('admin'));
router.use('/users', userRoutes);

module.exports = router;

Но я думаю, что мне нужен один users.controller, users.routes et c ... Так что будет лучше, если я напишу логин администратора c манипулирования пользователями в файле component.users.user.controller. js? Я имею в виду, что могу написать что-то вроде этого

async function patchUser(session,id,body){
    if(session.role !== 'admin' && session.id !== id){
        return 'Not allowed';
    }
    //proceed
}

. Это правильный подход, объединяющий логи администратора c и логи обычного пользователя c? Или я сделал это правильно, разделив их? Заранее спасибо.

...