Задания для самостоятельного выполнения
- Сложность:
- Rare
- Спроектируйте БД с использованием crow’s foot notation.
- Напишите модели данных, создайте и заполните БД с помощью SQLAlchemy.
- Напишите запросы для выборки и анализа данных из БД.
- Оформите отчёт в README.md. Отчёт должен содержать:- Условия задач
- Описание проделанной работы
- Скриншоты результатов
- Ссылки на используемые материалы
 
- Сложность:
- Medium
- Выполните задание с использованием Piccolo ORM.
- Сложность:
- Well-done
- Выполните задание с использованием NoSQL СУБД + ORM/ODM (MongoDB + Beanie, ArangoDB + Pydango, и т.д.)
Варианты заданий
- Заказы в ресторане. Каждый заказ принадлежит только одному столику. В одном заказе может быть несколько блюд, и каждое блюдо может быть в нескольких заказах. 
- Курсы. Каждый ученик может быть записан на несколько курсов. У каждого курса есть ответственный преподавтель, который может отвечать за реализацию нескольких курсов. 
- Разработка ПО. У каждого проекта есть своя команда разработчиков, но единственный менеджер. Разработчики могут участвовать в нескольких проектах одновременно. 
- Книги. Каждая книга издаётся одним издательством, но у неё может быть несколько авторов. 
- Музыка. Каждая композиция принадлежит только одному лейблу. Композицию могут исполнять несколько музыкантов или групп. 
- Кафедры. Каждая кафедра имеет одного заведующего, который является преподавателем. Преподаватели могут работать на нескольких кафедрах одновременно. 
- Дисциплины. Преподаватели могу вести одну или несколько дисциплин, а также одну дисциплину могут вести одновременно несколько преподавателей. Каждая дисциплина закреплена в единственном учебном плане. 
- Кружки. Каждый ученик может посещать несколько кружков, у каждого кружка есть ведущий, который может вести несколько кружков. 
- Склады. На каждом складе может храниться некоторое количество различных товаров, у каждого товара должен быть единственный поставщик. 
- Туристическое агенство. Продаёт своим клиентам туры в разные страны. Каждый клиент может посетить одну или несколько стран в рамках тура. 
- Новости. Каждый пользователь может быть подписан на несколько новостных каналов, у каждого канала есть владелец. 
- Автомобили. Каждый завод производит определённый модельный ряд автомобилей, после чего автомобили отправляются дилерам. Дилеры могут продавать одну или несколько марок автомобилей.