Django: Передача объектов модели контекстным_процессорам

Как новый разработчик Django, я столкнулся с проблемой, пытаясь передать список объектов модели в глобальную переменную, доступную в любом шаблоне, в любом приложении.

settings.py
TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': [os.path.join(PROJECT_ROOT, "templates")],
        'APP_DIRS': True,
        'OPTIONS': {
            'context_processors': [
                'django.template.context_processors.debug',
                'django.template.context_processors.request',
                'django.contrib.auth.context_processors.auth',
                'django.contrib.messages.context_processors.messages',
                'myapp.site_context.site_context_processor',
            ],
        },
    },
]
site_context.py
from .apps.events.models import Event


def site_context_processor(request):
    ctx = {}

    ctx['current_year'] = time.strftime("%Y")
    ctx['events'] = Event.objects.active()[0]
    return ctx

Я столкнулся с проблемой отсутствия app_label в модели Events, но когда я добавляю это, я получаю конфликтующие приложения в settings.py

Model class myapp.apps.events.models.Event doesn't declare an explicit app_label and isn't in an application in INSTALLED_APPS. когда settings.py выглядит как

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.sites',
    'django.contrib.messages',
    'django.contrib.staticfiles',

    'accounts',
    'directory',
    'events', 
    'utilities',

    'filebrowser',
]

но когда я добавляю приложение через myapp.apps.Events, я получаю RuntimeError: Conflicting 'event' models in application 'events': <class 'events.models.Event'> and <class 'myapp.apps.events.models.Event'>.

Не уверен, куда двигаться дальше. Любая помощь будет очень признательна.

Вернуться на верх