Разработать небольшой новостной сайт-визитку. На главной странице выводятся 3 новости (отображаем заголовок, краткий текст) отсортированных по дате добавления, с пагинатором и возможностью сортировки по дате в прямом и обратном порядке. Выводятся только активные новости.
В качестве меню реализовать список категорий в которых есть новости. Вложенность категорий не ограничена. Ссылка на страницу новости должна быть вида /news/news_title.
Страница /news/news_title должна отображать заголовок новости, текст новости, дату создания новости, а также форму с комментариями под новостью. Страница /admin должна проверять авторизацию пользователя. Логин login, пароль password
Администратор может:
- Просматривать список новостей, добавлять/редактировать/удалять новость.
- Просматривать список категорий, добавлять/редактировать/удалять категорию.
При добавлении категории нужно указать:
- Название
- Родительская категория
При добавлении новости нужно указать:
- заголовок
- категорию
- анонс
- подробный текст
Проект реализован на основе Yii2 (использование в качестве микрофреймворка) с использованием последней версии PHP. В качестве базы данных была использована PostgreSQL. Весь проект запускается в сборке докера из 4 контейнеров.
- Сделать копию репозитария
git clone
- В корне склонированного репозитория запустить
docker compose up -d
- Зайти в контейнер php (wnr-back)
docker exec -ti wnr-back sh
и внутри выполнить командыcomposer i
и./yii migrate
- Зайти в контейнер node (wnr-front)
docker exec -ti wnr-front sh
, подтянуть нужные скрипты запустив на выполнение командуnpm i
и собрать стили проектеаnpm run build
- В браузере открыть адрес, Открыть страницу Вход. Авторизоваться как администратор (логин admin и пароль admin).
- Проверить проект на соответствие ТЗ.