Рабочий процесс для создания записей проекта и пользователя в приложении ASP.NET MVC - PullRequest
1 голос
/ 09 марта 2010

У меня есть приложение, в котором есть таблица Projects и таблица Users. В моей форме Создать новый проект у меня есть обязательное поле для менеджера проекта. Тем не менее, запись пользователя для Project Manager может еще не существовать. Менеджер проекта - обязательное поле.

До сих пор я разрабатывал приложение на основе «один экран, одна запись», но в этом сценарии пользователь сначала должен создать запись пользователя (поскольку Project Manager является обязательным полем), а затем создать проект. запишите и назначьте нового пользователя в качестве менеджера проекта.

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

Какую стратегию вы бы использовали? Вы бы поместили все в одну форму (включая необязательного нового пользователя) и добавили сложный ViewModel в метод контроллера, или вы использовали бы многоступенчатую стратегию формы, или вы бы сделали что-то еще? Я рассматривал такие вещи, как всплывающая форма «Новый пользователь» в форме «Новый проект», но это кажется слишком умным и недостаточно RESTful.

Ответы [ 2 ]

0 голосов
/ 09 марта 2010

Подобное волшебнику поведение может быть наиболее удобным для пользователя. При необходимости вы можете пропустить бесполезные шаги.

0 голосов
/ 09 марта 2010

В этом случае, я думаю, разумно включить выбор «Создать нового пользователя» в раскрывающемся списке «Диспетчер проектов» в форме «Новый проект». Если этот параметр выбран, пользователю предоставляется форма «Новый пользователь», и он может добавить запись менеджера проекта одновременно с проектом.

Если ваши Views и ViewModels хорошо изолированы, вы можете загрузить форму нового пользователя как часть в форму New Project, используя AJAX. Таким образом, вы можете сохранить свои представления, модели и модели представления, сохраняя при этом хороший пользовательский опыт.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...