Проект YaMDbet собирает отзывы пользователей о различных произведениях искусства. Произведения поделены на такие категории, как «Книги», «Фильмы», «Музыка». Список категорий может быть расширен администратором. Сами произведения не храняться в YaMDb, здесь нельзя смотреть фильмы или слушать музыку. Произведение может иметь жанровый класс из списка предустановленных. (например, «Сказка», «Скала» или «Артхаус»). Новые жанры могут быть созданы только администратором.
- Создавать, удалять, рекагтировать пользователя (может как администратор так и владелец профиля пользователя);
- Выберать уникальный жанр для произведения искусства;
- Создавать и публиковать свои обзоры о разных произведениях;
- Оставить комментарий к обзору или прокоментировать комментарий;
- Просмотр других отзывов со всеми комментариями;
использует ряд проектов с открытым исходным кодом для правильной работы:
- Django 2.2.19 - веб-фреймворк Python высокого уровня.
- [Python 3.9]
И, конечно, сам API_YAMDB имеет открытый исходный код в частном репозитории на GitHub.
Клонировать и перейти в репозиторий с помощью терминала:
git clone https://github.com/GenVas/api_yamdb.git
cd api_yamdb
Запуск API_YAMDB в режиме разработки:
- Создать и активировать виртуальную среду
python3 -m venv env
source venv/bin/activate
- Установить зависимости из файла requirements.txt
pip install -r requirements.txt
- В папке с файлом manage.py выполните команду:
cd api_yamdb
python3 manage.py runserver
При загрузке CSV файлов в базу даннных приложения, убедитесь, что названия файлов соответствуют названию моделей приложения. В качестве пробелов между словами, в названиях файлов, используйте "_". Можете использовать в названиях как заглавные, так и прописные буквы. Так же убедитесь, что имена колонок в CSV файлах, которые явлются ForeignKey, названы по принципу <имя_поля_id> (пример genre_id). Все CSV файлы желательно закружать в директорию: static/data.
- В папке с файлом manage.py выполните команду:
python3 manage.py load-csv static/data
MIT
Автор: Тумарева Надежда