Skip to content

yury-yury/Kinopoisk

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

36 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

cours_work_4

Задание

Эта курсовая потребует знания Flask, SQLAlchemy, Marshmallow (или любого другого валидатора на ваш выбор), REST, CRUD, JWT и, конечно же, знаний и умений правильного создания структуры проекта.

В данной работе вы можете использовать либо свой написанный бек, либо использовать исходники, которые предоставлены здесь.

Описание

Аутентификация:

Для того чтобы у каждого пользователя была возможность добавлять понравившиеся фильмы в закладки для просмотра позже, нам нужно их как-то разграничивать, поэтому мы организуем страницы с регистрацией и аутентификацией на основе уже изученной спецификации JWT.

Пользователи:

У каждого пользователя будет страница с его профилем, где он сможет выбрать любимый жанр, указать имя и фамилию, а также в случае необходимости сменить пароль.

Еще для пользователя нужно реализовать механизм добавления и удаления фильмов в/из закладок, а также просмотр всех сохраненных в закладки фильмов.

Фильмы, режиссеры, жанры:

Конечно же, нужно добавить самые главные сущности — фильмы, режиссеры и жанры. Для них сделаем лишь возможность чтения (get-запросы). Для всех объектов будет работать пагинация, чтобы мы могли постранично выводить их на экран, а также можно будет посмотреть самые новые фильмы.

Стек:

Python, Flask, SQLite3, SQLAlchemy, REST, JWT

Подготовка к запуску проекта

  • Установка зависимостей
pip install -r requirements.txt

pip install -r requirements.dev.txt
  • Создание моделей (очистит БД и создаст все модели, указанные в импорте)
python create_tables.py
  • Загрузка данных в базу
python load_fixture.py

Скрпит читает файл fixtures.json и загружает данные в базу. Если данные уже загружены - выводит соответсвующее сообщение.

Запуск проекта

Bash (Linux/MACOS)

export FLASK_APP=run.py
export FLASK_ENV='development'
flask run

CMD (Windows)

set FLASK_APP=run.py
set FLASK_ENV=development
flask run

PowerShell (Windows)

$env:FLASK_APP = "run"
$env:FLASK_ENV = "development"
flask run

Запуск тестов

pytest .

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages