- Ребенок
- Опека
- Учитель
Я разработал свои модели так, чтобы у них был родительский класс User с общими свойствами, и у меня есть класс для каждого типа как подкласс. Идея заключалась в том, что он будет генерировать таблицы базы данных «Пользователи», «Дети», «Защитники» и «Учителя». Где последние три будут иметь FK для пользователей, поэтому, когда я получаю, например, учителя, я также могу получить его имя и фамилию.
Это мои модели:
User.php
Код: Выделить всё
Код: Выделить всё
Код: Выделить всё
Код: Выделить всё
[

Как видите, таблицы содержат правильные поля, а пользователь содержит дискриминатор для определения типа пользователя. Но в таблицах, представляющих разные типы пользователей, чего-то не хватает. Когда бы я нашел учителя в этой базе данных, я бы понятия не имел, что это за пользователь на самом деле, и было бы невозможно получить имя, фамилию... потому что таблица «Учителя» не имеет FK для таблицы «Пользователи».
Я думал, что смогу решить эту проблему, добавив число «многие к одному» в подтаблицы в xml:
Код: Выделить всё
Код: Выделить всё
Property App\Domain\Model\User\Teacher::$user does not exist
Я думаю, что делаю что-то неправильно, как мне успешно реализовать разные типы пользователей? п>
Подробнее здесь: https://stackoverflow.com/questions/791 ... e-of-users
Мобильная версия