При решении домашнего задания за основу взял первый присланный проект ДЗ (Березовский С.)
Замечания:
Прошу при выполнении ДЗ по Django настраивать админ пользователя на:
username = admin password = admin
Встреченные ошибки:
- Использование в модели метода __str__() вместо __unicode__() - приводит к ошибке кодирования, если в полях используются не ascii символы, в чем разница - читайте в доке версии 1.7: https://docs.djangoproject.com/en/1.7/topics/python3/#str-and-unicode-methods;
- Очень часто в моделях присутствует тип чего-то, так вот не рекомендуется использовать ключевое слово "type" как имя поля;
- При определении моделей, чтобы сделать поле модели необязательным необходимо помнить 2 параметра:
blank = True - отвечает за валидацию со стороны фронтэнда, null = True - отвечает за допустимость в БД null значений
таким образом, указав лишь blank = True (Джанго не будет воспринимать поле как обязательное, но БД расскажет, что null значения, увы, в графе недопустимы. - Если в модели определены "choices" - представляет собой набор кортежей вида ("служебная часть", "отображаемая часть"), для того, чтобы выводить не служебную, а отображаемую часть необходимо применять специальный метод: .get__display() (см.документацию - https://docs.djangoproject.com/en/dev/ref/models/instances/#django.db.models.Model.get_FOO_display)