Тестовое задание для компании "Мой Дом Онлайн".
- Title
- Release Date
- Rating (min value - 1, max value - 5)
- Genre
- Actors
- Similar movies
- Title
- Rating
- Genre
- Number of actors
Users should be able:
- to order movies by release date and rating (default ordering by rating DESC)
- filter by genre (multiple)
- and search by title.
- Title
- Release Date
- Rating
- Genre
- Actors (first name, last name)
- Similar movies (title, release date)
- Разработка велась в IDE VSCode с использованием Docker Dev Container (Debian);
- Стек: Django, DjangoRestFramework;
- Установите виртуальное окружение (команда:
python -m venv venv
). - Активируйте виртуальное окружение (команда:
source venv/bin/activate
). - Установите зависимости из файла requirements.txt (команда:
pip install -r requirements.txt
). - Выполните миграции (команда:
python manage.py migrate
). - Заполните базу данных (команда:
python manage.py loaddata fixtures.json
). - Суперюзер - admin, пароль - admin.
- Запустите dev-сервер (команда:
python manage.py runserver
).
Request: [GET] http://127.0.0.1:8000/films/?ordering=release_date&genre=Драма&genre=Криминальный&search=Побег
Response:
[
{
"title": "Побег из Шоушенка",
"rating": 5,
"genre": "Драма",
"number_of_actors": 2
}
]
Request: [GET] http://127.0.0.1:8000/films/5/
Response:
{
"title": "Крестный отец",
"release_date": 1972,
"rating": 3,
"genre": "Драма",
"actors": [
{
"first_name": "Аль",
"last_name": "Пачино"
},
{
"first_name": "Марлон",
"last_name": "Брандо"
}
],
"similar_movies": [
{
"title": "Криминальное чтиво",
"release_date": 1994
},
{
"title": "Побег из Шоушенка",
"release_date": 1994
}
]
}
Андрей Плотников (Andy.Plo@yandex.ru)