Yii: Одна большая или несколько маленьких моделей?

Здравствуйте

Подскажите, лучше сделать одну большую модель User (авторизация, регистрация, подтверждение, восстановление пароля) или разделить ее на несколько маленьких?

Вопрос возник, потому что в www.yiiframework.com/doc/guide/1.1/ru/form.model идет разделение (LoginForm отделяют от User, хотя можно было написать все в User и использовать сценарии), а на некоторых других ресурсах (например, www.dbhelp.ru/yii-auth-and-reg-2/page/) все пихают в одну модель
  • Вопрос задан
  • 2488 просмотров
Пригласить эксперта
Ответы на вопрос 3
Fesor
@Fesor
Full-stack developer (Symfony, Angular)
LoginForm это LoginForm, а User это User. LoginForm может вообще не пересекаться с User (внезапно). Вообще как хотите. Это ж Yii...
Ответ написан
@terehinis
Все зависит от того насколько масштабным функционалом будут обладать модели. К примеру если сделаете две модели, и в моделе Users не будет кроме сгенерированного через gii функционала (ну +2 функции к примеру), то разделять особого смысла нет, только скорость потеряете. Если же модель Users будет в себе содержать кучу сложных обработчиков (взаимодействие с другими базами, программный контроль данных и т.д.) то разделить для визуального удобства проще. Все зависит от сложности задачи.

P.S. В большенстве случаев такой функционал объеденяют
Ответ написан
Проблема решается указанием сценариев - регистрация, авторизация и так далее и соответствующим набором правил валидации для каждого сценария.

Мое личное мнение - не так уж им много там, чтобы разносить на несколько моделей.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы