В данном задании мы поэтапно реализуем сайт электронных петиций, аналог https://petition.kievcity.gov.ua/, только базовый функционал. Сделайте форк (ссылка). В нем есть тесты которые должны проходить. (для частей 2-3 будут добавлены)
- Создать главную страницу
- Создать модель User
- Создать форму регистрации. Пароль пользователя должен быть сохранен НЕ в откртытом виде.
- Создать модель Petition
- Содать страницу создания петиции. Поля формы: название, содержание. Форма должна быть доступной только зарегестрированным пользователям
- Реализовать сохранение, отображение и форму обновления петиции
- Добавить возможность проголосовать за петицию зарегестрированным пользователям. Проголосовать можно только 1 раз за одну петицию.
- Показать на главной странице ТОП-10 петиций и количество голосов за них.
- Добавить Job для прекращения голосования через 10 дней после создания петиции.
- Статус петиции должен стать 'finished'. Голосование за данную петцию должно стать невозможным.
- Отправлять письмо создателю петиции о прекращении голосования и его результатах