Связывание двух разных представлений одним и тем же методом контроллера - MVC - PullRequest
0 голосов
/ 02 апреля 2020

У меня на сайте есть две области: одна для администраторов, а другая - для публикации c.

То есть представление рецептов c:

Public Recipes View

И вот представление рецептов администратора: enter image description here

Оба они используют один и тот же метод модели, чтобы получить список рецептов со своими связанными поварами. Но проблема в том, как я могу иметь дело с двумя различными представлениями в методе контроллера?

В настоящее время это мой метод индекса, и он отображает представление администратора:

async index(_, res) {
        try {
            const recipes = await Recipe.all();
            return res.render('admin/recipes/index', { recipes });
        } catch (err) {
            const errorData = {
                message: err.message || 'Database error',
                name: err.name,
                status: err.status || 500,
            };
            return res.status(errorData.status).json({
                error: 'Houve um erro durante a procura de receitas',
                errorData,
            });
        }
    }

Мои маршруты:

routes.get('/', (req, res) =>
    // Here i storing the recipes in the file system just as a temporary solution 
    res.render('public/index', { recipes: data.recipes })
);
routes.get('/admin/recipes', RecipesController.index);

Я думал о передаче пути представления в качестве аргумента к методу контроллера, но я не знаю, правильное ли это решение.

...