Страницы:
Главная со списком новостей:
- Пиктограмма
- Название новости (ссылка, ведующая на карточку новости с полным описанием)
- Дата создания
- Кнопка удаления новости с подтверждением
Карточка новости:
- Название новости
- Дата создания
- Картинка
- Полная новость (форматирование не требуется nl2br будет вполне достаточно).
Страница добавления/редактирования новости:
- Добавление новости
- Редактирование новости
Техническое описание:
- Проект на Symfony 4.2.
- Фронт часть на Vue.js.
- Ассеты подключить через symfony-encore.
- Для работы с новостями использовать компоненту FosRestBundle.
- Создание и редактирование новости необходимо выполнить через FormType с валидаторами.
- Заголовок новости должен содержать только текст на русском или английском языке, цифры и знаки препинания.
- Картинка должна иметь размер 130 на 100.
- Авторизация не требуется (но если вдруг сделаете самую простую, будет плюсом).
- Удаление должно быть через механизм SoftDelete (SoftDoctrineExtensionsBundle).
- Картинки к новостям необходимо хранить вне public папки и отдавать с помощью механизма X-Accel-Redirect (Nginx) используя стандартный компонент BinaryFileResponse у Symfony.
- Написать unit-тест на FormType по новостям.
- База данных для хранения новостей любая, но проще всего sqlite3.
На выходе:
- Проект на Symfony
- Конфиг файл для Nginx