@Mindgrow

MVC — Использовать одну модель на странице Профиля или разделить на несколько?

Добрый день.

Прошу совета.
В проекте, есть страница профиля.
На странице профиля можно просмотреть/поменять данные пользователя, такие как ФИО, дата рождения, город и прочее..
Так же на странице можно поменять настройки, такие как получать уведомления на вк, фб, емайл.
Так же на странице можно изменить пароль.

Все эти группы данных разбиты на 3 блока: информация, настройки и изменение пароля. Каждый блок это отдельная форма со своей отдельной кнопкой submit, которая обращается к отдельному методу контроллера.

В базе данных это одна сущность AspNetUser. В начале мне показалось логичней разделить одну модель на 3, для соответственно независимого изменения данных пользователя, настроек и пароля. Сделал все на отдельных страницах. Теперь думаю все объединиять на одной. Но тогда проще использовать одну модель. И соответственно одну html форму. И соответвенно один метод контроллера.

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

Что можно посмотреть или почитать на этот счет?
  • Вопрос задан
  • 112 просмотров
Решения вопроса 1
@Mindgrow Автор вопроса
Сделал одну модель для вывода представления и несколько моделей для изменения каждого из разделов профиля. Соответственно получилось несколько методов контроллера с разными входящими моделями для изменения своего блока данных.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
Flight404
@Flight404
начинающий PHP - программист
Как вартант модель реализует функционал одного объекта. Т.е. пользователь это объект и все операции с ним связанные логично заключить в одну модель. Или же каждой таблице в БД соответствует одна модель, содержащая весь необходимый функционал для работы с ней. А контроллер может подключать сколько угодно моделей по мере надобности. Дело вкуса.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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