/
githubmirror
/
edx-platform
Обзор
Документация
Войти
/
githubmirror
/
edx-platform
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
release-ulmo
cms/djangoapps/models/settings/encoder.py
31 строка
908 B
Jawayria
chore: Applied lint-amnesty on cms/djangoapps
10 дек 2021, 17:14
10 дек 2021, 17:14
59631c4
Код
Авторство
О чём код?
""" CourseSettingsEncoder """ import datetime import json from json.encoder import JSONEncoder from opaque_keys.edx.locations import Location from openedx.core.djangoapps.models.course_details import CourseDetails from xmodule.fields import Date # lint-amnesty, pylint: disable=wrong-import-order from .course_grading import CourseGradingModel class CourseSettingsEncoder(json.JSONEncoder): """ Serialize CourseDetails, CourseGradingModel, datetime, and old Locations """ def default(self, obj): # lint-amnesty, pylint: disable=arguments-differ, method-hidden if isinstance(obj, (CourseDetails, CourseGradingModel)): return obj.__dict__ elif isinstance(obj, Location): return obj.dict() elif isinstance(obj, datetime.datetime): return Date().to_json(obj) else: return JSONEncoder.default(self, obj)