Учебный проект на Django для управления каталогом фильмов с возможностью добавления через веб-форму и просмотра списка.
- ✅ Добавление фильма через форму (название, описание, отзыв)
- ✅ Просмотр списка всех добавленных фильмов
- ✅ Адаптивный интерфейс на Bootstrap 5
- ✅ Валидация данных через Django ModelForm
- Backend: Django 5.x
- Database: SQLite (встроенная)
- Frontend: Bootstrap 5.3.3 (CDN)
- Python: 3.8+
git clone https://github.com/username/django-movie-catalog.git
cd django-movie-catalogpy -m venv .venv
.\.venv\Scripts\Activate.ps1
python -m pip install --upgrade pipЕсли возникает ошибка выполнения скриптов:
Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass
.\.venv\Scripts\Activate.ps1pip install -r requirements.txtpython manage.py makemigrations
python manage.py migratepython manage.py runserver 127.0.0.1:8001Откройте браузер: http://127.0.0.1:8001/
.
├── manage.py
├── movie_project/ # Настройки Django проекта
│ ├── __init__.py
│ ├── settings.py
│ ├── urls.py
│ ├── wsgi.py
│ └── asgi.py
├── films/ # Основное приложение
│ ├── migrations/ # Миграции БД
│ │ ├── __init__.py
│ │ └── 0001_initial.py
│ ├── templates/films/ # HTML шаблоны
│ │ ├── base.html
│ │ ├── film_form.html
│ │ └── film_list.html
│ ├── __init__.py
│ ├── admin.py
│ ├── apps.py
│ ├── forms.py # Django ModelForm
│ ├── models.py # Модель Film
│ ├── tests.py # Тесты
│ ├── urls.py # URL маршруты
│ └── views.py # View функции
├── .gitignore
├── requirements.txt
└── README.md
- Главная (
/) — список всех фильмов - Добавить фильм (
/add/) — форма для добавления нового фильма
- Перейдите на страницу "Добавить фильм"
- Заполните поля:
- Название — название фильма
- Описание — краткое описание сюжета
- Отзыв — ваше мнение о фильме
- Нажмите "Сохранить"
- Вы будете перенаправлены на страницу со списком, где появится новый фильм
Запуск тестов:
python manage.py testПроверка корректности проекта:
python manage.py check| Поле | Тип | Описание |
|---|---|---|
| title | CharField | Название фильма |
| description | TextField | Описание фильма |
| review | TextField | Отзыв о фильме |
Причина: Отсутствует CSRF токен в форме
Решение: Убедитесь, что в шаблоне формы присутствует {% csrf_token %}
Причина: Не выполнены миграции
Решение:
python manage.py makemigrations
python manage.py migrateПричина: На порте 8000 запущено другое приложение
Решение: Используйте другой порт, например:
python manage.py runserver 127.0.0.1:8001- Python 3.8 или выше
- Windows 11 (для других ОС измените команды активации venv)
- pip (менеджер пакетов Python)
python -m pip freeze > requirements.txtpython manage.py createsuperuserАдмин-панель доступна по адресу: http://127.0.0.1:8001/admin/
MIT License — проект создан в учебных целях.
Георгий Белянин (Georgy Belyanin)
- Email: georgy.belyanin@gmail.com

