Skip to content

Случайные мнения о фильмах.

Notifications You must be signed in to change notification settings

andrey-kobelev/what_to_watch

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Проект «Что посмотреть?»

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

Написал сам сайт и API к нему на Flask. Реализовал такие возможности для пользователей сайта как: Получить случайное мнение о фильме; Перейти на страницу конкретного мнения по прямой ссылке; Добавить собственное мнение о фильме. Подключил к проекту ORM SQLAlchemy. Использовал базу данных SQLite. Установил и настроил Flask-Migrate для создания и применения миграций. Подключил статику и шаблоны к проекту, реализовал возможность вывода данных в шаблоны при помощи шаблонизотора Jinja2. Описал форму и валидаторы полей форм при помощи Flask-WTF. Прописал пользовательскую команду для выгрузки данных из CSV-файла в БД, для того, что бы можно было продемонстрировать возможности сайта и не деплоить его с пустым контентом.

Возможности для пользователей сайта:

  1. Получить случайное мнение о фильме.
  2. Перейти на страницу конкретного мнения по прямой ссылке.
  3. Добавить собственное мнение о фильме.

Каждое мнение содержит:

  • название фильма,
  • текст мнения,
  • уникальную ссылку на страницу с мнением,
  • ссылку на подробный обзор фильма на любом стороннем сервисе (эту информацию пользователь может не добавлять).

Автор

  • Кобелев Андрей Андреевич

Технологии

Как развернуть проект локально

Клонировать репозиторий и перейти в него в командной строке:

git clone https://github.com/andrey-kobelev/what_to_watch.git
cd what_to_watch

Cоздать и активировать виртуальное окружение:

python3 -m venv venv  
source venv/bin/activate  

Установить зависимости из файла requirements.txt:

python3 -m pip install --upgrade pip  
pip install -r requirements.txt  

Создать файл .env

FLASK_APP=opinions_app
FLASK_ENV=development
DATABASE_URI=sqlite:///the_app.sqlite3

Создать базу данных Убедитесь, что виртуальное окружение проекта what_to_watch активировано, и из директории what_to_watch запустите интерактивную оболочку:

..$ flask shell
Python 3.9.2 (v3.9.2:1a79785e3e, Feb 19 2021, 09:09:00) 
[Clang 12.0.0 (clang-1200.0.32.29)] on darwin
App: opinions_app [development]
Instance: /Users/username/dev/what_to_watch/instance
>>> from opinions_app import db
>>> db.create_all()

Применить миграции:

flask db upgrade

Импортировать данные для демонстрации работы проекта

flask load_opinions

Запустить проект:

flask run

About

Случайные мнения о фильмах.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • HTML 57.7%
  • Python 34.9%
  • CSS 5.2%
  • Mako 2.2%