from framework.cbv import CreateView, ListView from framework.core import App from framework.templates import render from logger import Logger from mappers import MapperRegistry from models import TrainingSite, EmailNotifier, SmsNotifier, Serializer from logger import debug from orm.unitofwork import UnitOfWork site = TrainingSite() logger = Logger('views') email_notifier = EmailNotifier() sms_notifier = SmsNotifier() UnitOfWork.new_current() UnitOfWork.get_current().set_mapper_registry(MapperRegistry) @debug def get_index_view(request): logger.log('Получаем главную страницу') links_menu = request.get('links_menu') return '200 OK', render('index.html', links_menu=links_menu) class CoursesListView(ListView): template_name = 'course_list.html' queryset = site.courses # def get_courses_view(request): # logger.log('Получаем список курсов') # links_menu = request.get('links_menu')
from templator import render import datetime except Exception as e: print(f'Error import module {e}') exit(1) import logging_mod from models import TrainingSite, EmailNotifier, SmsNotifier, BaseSerializer from cbv_classes import ListView, CreateView from my_orm import UnitOfWork, DomainObject from mappers import MapperRegistry logger = logging_mod.Logger('views') site = TrainingSite() # загружаем списки объектами из БД (если происходит перезагрузка сайта/скрипта) if not site.students: result = MapperRegistry.get_current_mapper('student').all() site.students = result for k in site.students: print(f'name:{k.name} -----> id: {k.id}') if not site.courses: result = MapperRegistry.get_current_mapper('course').all() site.courses = result if not site.categories: result = MapperRegistry.get_current_mapper('category').all() site.categories = result