У меня есть Account
сущность. Это может быть три разных типа: пользовательский, внешний и системный. Внешние и системные учетные записи одинаковы, но учетная запись пользователя должна принадлежать сущности User
.
Я решил проблему с помощью наследования SINGLE TABLE (с полем дискриминатора), но я слышал, что использование наследования не является хорошей практикой.
Есть ли другие оптимальные способы борьбы с этим?
Я думал, что Many-to-many
(сводная таблица) с уникальными ограничениями на ключах было бы неплохо. Но в этом случае я должен использовать ArrayCollection
внутри сущностей, чтобы управлять только одной связанной сущностью.