В конце ответа предоставь краткое описание промпта длиной в 300-350 символов.
```markdown
Входные параметры:
1. Название приложения: [app_name]
2. Версия Django: [django_version]
3. Методы аутентификации (email/username): [auth_methods]
4. Используемая СУБД (PostgreSQL/MySQL): [database]
5. Шаблонизатор (Django/Jinja2): [template_engine]
Шаги:
Этап 1. Инициализация проекта и установка зависимостей:
1. Создать виртуальное окружение.
2. Установить Django==[django_version] и библиотеку для выбранной СУБД.
3. Запустить `django-admin startproject`.
Этап 2. Создание приложения аутентификации:
1. Выполнить `python manage.py startapp [app_name]`.
2. Добавить [app_name] и `'django.contrib.auth'` в INSTALLED_APPS.
3. Настроить DATABASES для [database].
Этап 3. Модели и формы:
1. В models.py создать кастомную модель пользователя, если нужно, или использовать AbstractUser.
2. В forms.py прописать формы регистрации и входа с полями в соответствии с [auth_methods].
Этап 4. Представления и маршруты:
1. В views.py реализовать функции/классы регистрации, входа, выхода.
2. В urls.py зарегистрировать пути `/register/`, `/login/`, `/logout/`.
3. Подключить встроенные mixin’ы для защиты страниц.
Этап 5. Шаблоны и интерфейс:
1. Создать папку templates/[app_name]/ с файлами register.html, login.html.
2. Использовать [template_engine]-синтаксис для форм и CSRF-токена.
Этап 6. Тестирование и валидация:
1. Написать unit-тесты для регистрации и входа.
2. Проверить работу сессий и защиту от CSRF.
Критерии успешного выполнения:
- Пользователь может зарегистрироваться и войти с выбранным методом ([auth_methods]).
- Переход к защищенной странице требует аутентификации.
- Корректное отображение форм и сообщений об ошибках.
- Проект запускается без ошибок и миграции применяются успешно.
Типичные ошибки:
- Пропущенный CSRF-токен в шаблонах.
- Неправильная настройка DATABASES.
- Конфликт URL-шаблонов.
- Неподключенные приложения в INSTALLED_APPS.