Учебный проект курса "Знакомство с Django: ORM" от Devman
Функции для взлома электронного журнала школы
Для работы со функциями необходимо скопировать файл datacenter_api.py
в каталог datacenter
электронного журнала. А файл commendation.txt
положить в каталог рядом с manage.py
Далее, делаем текущим каталогом папку, где находится файл manage.py
и запускаем консоль:
python manage.py shell
Функция fix_marks
служит для замены двоек и троек выбранного ученика на пятерки. Для вызова функции сначала делаем ее импорт, в консоли выполняем:
from datacenter.datacenter_api import fix_marks
Далее вызываем эту функцию, качестве единственного параметра она ожидает ФИО ученика. Можно указать неполное ФИО, если этого будет достаточно для поиска ученика, например:
>>>fix_marks('Блохина Полина')
Если ученик будет найден, он будет выведен и функция спросит производить ли операцию.
Найден ученик: Блохина Полина Яковлевна 3А
Все двойки и тройки этого ученика будут заменены на пятерки!
Продолжить (y/n)?
В случае положительного ответа оценки в базе будут исправлены.
Функция remove_chastisements
удаляет замечания для заданного ученика. Порядок работы с функцией аналогичен fix_marks
. Импорт:
from datacenter.datacenter_api import remove_chastisements
Вызов:
>>>remove_chastisements('Блохина Полина')
Функция create_commendation
служит для добавления похвалы для ученика по выбранного предмету. Текст похвалы выбирается случайным образом из фраз указанных в commendation.txt
. Урок, для которого добавляется фраза, также выбирается случайно из всех уроков по данному предмету.
Импорт функции:
from datacenter.datacenter_api import create_commendation
При вызове нужно передать два аргумента ФИО ученика и нужный предмет:
>>>create_commendation('Блохина Полина', 'Музыка')
Если все данные указаны правильно, функция выведет данные ученика, выбранный урок, текст похвалы и запросит одобрение на внесение изменений:
Найден ученик: Блохина Полина Яковлевна 3А
Найден предмет: Музыка 3 класса
Выбран урок 2019-02-16 - Музыка 3А
Выбрана фраза: Я вижу, как ты стараешься!
Продолжить (y/n)?
В случае подтверждения данные в базе данных будут обновлены.