У меня есть следующие требования к приложениям Symfony 4:
- . Существует несколько типов пользователей: Admin, Agency, Agent, Client - у каждого из них есть определенные поля, каждому необходимо аутентифицировать
- отношенийследующие:
- Агентство имеет много агентов
- Агентство имеет много клиентов
- Агент имеет много клиентов
- Клиент принадлежит агентству (не обнуляется)
- Клиент принадлежит Агенту (обнуляемый)
- приложение использует EasyAdminBundle, чтобы позволить Администратору управлять всеми, Агентство управлять своими Агентами и Клиентами, Агент управлять своими Клиентами
- есть выделенная область для каждого Клиента для доступа к его личным данным
Какой самый лучший / самый чистый подход для их решения?
Должен ли я расширить класс User (генерируется с помощью make:auth) при создании сущностей других типов пользователей?
Или я должен относиться к сущности User во всех других сущностях (OneToOne)?
Какой способ лучше всего работает с EasyAdminBundle?