@erastik

Нужно ли в Symfony при создании доктриновских entity указывать обязательные поля в конструкторе?

Добрый день!
Правильно ли архитектурно в конструкторе доктриновских entity указывать обязательные свойства(not null)?

class User {

  private $username;
  private $password;
   // ...
  private $propertyN;

  public function __constructor($username, $password, $someElseProperty ... $propertyN)
  {
     $this->username = $username;
     $this->password = $password;
     $this->someElseProperty = $someElseProperty;
     // ...
   }
}
  • Вопрос задан
  • 392 просмотра
Пригласить эксперта
Ответы на вопрос 1
voronkovich
@voronkovich
Один из разработчиков доктрины советует следовать принципу:

Модель всегда должна находиться в валидном состоянии.


Соответственно, передавать обязательные поля в конструктор - хорошая практика.
См. слайды с описанием лучших практик для доктрины: Doctrine best practices.
Сама доктрина, для установки данных использует механизм рефлексии.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы