Переписать проект из прошлого модуля, используя библиотеки sqlalchemy и alembic
Для повторения темы можете пересмотреть видеоурок. Для локальной проверки тестов рекомендуется присвоить в переменную окружения CONFIGPATH путь до собственного конфига. Alembic необходимо инициализировать в корне репозитория.
Дополнить модели в соответствии с API:
- AdminModel
- ThemeModel
- QuestionModel
- AnswerModel
При проектировании базы нужно учесть следующие ограничения:
- поле title в таблицах questions и themes уникальное.
- при удалении записей из таблиц questions и themes должны удаляться все связанные записи. Пояснение: При удалении темы - должны удаляться все связанные с ней вопросы. Аналогично при удалении вопроса - удаляются варианты ответов.
- Нельзя добавить информацию о вопросе или ответе по несуществующему в базе значению внешнего ключа.
Не изменяя определение методов, поддержать ожидаемое поведение.