Генерация разрешений RBAC из существующих контроллеров
Добавлено: 2017.08.18, 10:15
Приветствую всех! Обшерстил интерент и форумы, не нашел ответа на вопрос, надеюсь посоветуете решение.
Суть вопроса: есть много контроллеров, которые периодически будут добавлятся, каждый контроллер имеет стандартные 4 метода (CRUD). Нужно сделать возможность разделять права на каждый контроллер и метод отдельно. Идея каждый раз дописывать в rbac/init новый контроллер, не очень радует.
В базе разрешения хотелось бы хранить как "module-one/method-one", по этому перебор файлов в папке controllers, не совсем подходит.
Собственно вопросы:
1. Можно ли как-то красивее получить все контроллеры, или все роуты, не прибегая к обходу и парснгу файлов в папке controllers?
2. Если нет, то как получив файл ModuleOneController.php, получить его id в роуте, т.е. "module-one"?
3. Может что-то упускаю, как решают такие вопросы опытные юиишники? Не плохая ли идея в целом, подводные камни какие может есть, которые не вижу пока?
Спасибо.
Суть вопроса: есть много контроллеров, которые периодически будут добавлятся, каждый контроллер имеет стандартные 4 метода (CRUD). Нужно сделать возможность разделять права на каждый контроллер и метод отдельно. Идея каждый раз дописывать в rbac/init новый контроллер, не очень радует.
В базе разрешения хотелось бы хранить как "module-one/method-one", по этому перебор файлов в папке controllers, не совсем подходит.
Собственно вопросы:
1. Можно ли как-то красивее получить все контроллеры, или все роуты, не прибегая к обходу и парснгу файлов в папке controllers?
2. Если нет, то как получив файл ModuleOneController.php, получить его id в роуте, т.е. "module-one"?
3. Может что-то упускаю, как решают такие вопросы опытные юиишники? Не плохая ли идея в целом, подводные камни какие может есть, которые не вижу пока?
Спасибо.