MVC организация для блога - PullRequest
2 голосов
/ 02 августа 2010

Я все еще вхожу в MVC, и для моего первого реального проекта я планирую создать блог.Это будет очень просто (по крайней мере, на первый взгляд).Все, что мне нужно, будет на одной странице.Вот начальные функции, для которых я снимаю:

  • Пользователь должен иметь возможность войти в систему, но не зарегистрироваться (я буду единственным, кто сможет публиковать сообщения, и я добавил себя непосредственно в базу данных.
  • Сообщения блога должны быть перечислены в порядке убывания с заголовком, датой публикации и телом. На данный момент никаких комментариев не требуется.
  • В нижней части страницы всегда будет область для созданияновое сообщение, если вы вошли в систему.

Поскольку я все еще новичок в структуре MVC, я хотел бы получить несколько советов о том, как это следует организовать.

Для моих моделей я решил, что у меня должен быть репозиторий постов и класс BlogPost для данных постов, которые можно использовать как для публикации, так и для извлечения. Мне также нужен класс для пользователя.

Когда это произойдетк контроллерам я немного менее уверен. Должен ли я иметь разные контроллеры для каждого типа действий? Например, для отправки сообщений должен быть установлен контроллер, для получения доступа - контроллер, а для входа в систему должен быть установлен контроллер, например:tc?

Что касается представлений, поскольку мне действительно нужна только одна страница, должен ли я иметь только одно представление, и чтобы это представление выводило соответствующий контент из моих контроллеров?

Просто позвольте мнедумаю, я на правильном пути.Если мой мыслительный процесс далеко, пожалуйста, скажите мне.Я только начал пробираться через книгу Стивена Сандерсона MVC 2, но я чувствую, что мне нужно выходить самостоятельно и играть между сессиями чтения.

Спасибо.

1 Ответ

2 голосов
/ 02 августа 2010

Контроллеры должны быть сгруппированы по функциональности. Вы также можете иметь контроллер для каждого ресурса (REST). Вы можете иметь AuthenticationController, который обрабатывает аутентификацию, и PostsController, который будет обрабатывать поиск сообщений и добавление нового сообщения. Что касается представлений, при условии, что у вас будет одна страница с списком сообщений и добавлением новых сообщений, у вас может быть один просмотр, но, возможно, с несколькими частичными представлениями / редактором / шаблонами отображения.

...