2012-04-14 2 views
0

Я хочу, чтобы разделить пользовательские данные в двух таблиц/объектов:Doctrine: рыхлый отношение между двумя сущностями

  1. Технические данные пользователя (имя пользователя, адрес электронной почты, пароль, соль, ..)
  2. персональных данных пользователя (имя, рождение, адрес, характеристика)

Жесткая вещь в этом заключается в том, что простой встроенный объект (личные пользовательские данные встроены в технические данные пользователя) должен иметь строгую зависимость, а два полностью разделенных объекта затруднять обработку разрешений.

Как я могу связать данные без зависимости между объектами?

С наилучшими пожеланиями, Бодо

ответ

0

Читают вопрос, что приходит на мой взгляд, является «Свободный интерфейс сцепка». В этом случае вы можете сделать следующее: 1) Создайте интерфейс, который определяет общедоступные методы для персональных пользовательских данных, например «PersonalDataInterface». 2) Сделайте объект, содержащий персональные данные, реализует этот интерфейс. 3) В вашем объекте технических данных вместо того, чтобы вводить объект, содержащий персональные данные, введите hint interface.

Таким образом, вы сможете передать этому объекту любой объект, реализующий этот интерфейс.

Надеюсь, это помогло!

+0

Привет, благодарю вас за ответ! Свободное отношение должно быть на постоянном уровне. Так что в Доктрине. У меня должен быть выбор для получения личных данных или технических данных без полного объекта обоих. Например, если пользователь загружает новый файл, я просто хочу сохранить его в объекте пользовательских данных, и все в порядке, я бы не хотел, чтобы он сообщил технической сущности пользователя, что есть новое изображение, связанное с пользователем – bodokaiser

Смежные вопросы