Переписал код с использованием парадигмы ООП. Учел все требования к решению.
Админка находится по адресу http://127.0.0.1:4000/admin/cat/
Чтобы открыть каждую запись отдельно, нужно нажать на иконку карандаша.
Я также немного расширил стандартную страницу редактирования записи и добавил отображение кота.
Админка поддерживает полноценный поиск по всем полям, и вы можете сортировать список по любому полю, кликнув на его название.
Магазин поддерживает работу как через ORM, так и через API. Вот некоторые доступные запросы:
Получить список всех котов: http://127.0.0.1:4000/api/cats
Получить конкретного кота по ID: http://127.0.0.1:4000/api/cats/1
Поиск: http://127.0.0.1:4000/api/cats/search?query=Мурсик
Поиск с сортировкой результата по имени: http://127.0.0.1:4000/api/cats/search?query=Мурсик&sort_by=name
Также я добавил простой фронтенд для магазина с возможностью поиска и сортировки по адресу http://127.0.0.1:4000
Google Docs для задание 3
Студент 1. Задание: Ежемесячная стипендия студента составляет educational_grant руб., а расходы на проживание превышают стипендию и составляют expenses руб. в месяц. Рост цен ежемесячно увеличивает расходы на 3%, кроме первого месяца. Составьте программу расчета суммы денег, которую необходимо единовременно попросить у родителей, чтобы можно было прожить учебный год (10 месяцев), используя только эти деньги и стипендию. https://docs.google.com/document/d/1kkU8sCzQ0JL8Z9M_dXpv3NKEvkD0Wme6/edit?usp=sharing&ouid=108464219953126547672&rtpof=true&sd=true
Студент 2. Задание: По номеру месяца вывести кол-во дней в нем (без указания названия месяца, в феврале 28 дней). Результат проверки вывести на консоль. Если номер месяца некорректен - сообщить об этом https://docs.google.com/document/d/1RVyg0XHESAf3d8um5dexn1oVRfQPw_B1/edit?usp=sharing&ouid=108464219953126547672&rtpof=true&sd=true