Рубрики
Без рубрики

Используя контекстный процессор в Django для создания динамического нижнего колонтитула

Введение в контекстный процессор Всем привет, Мы все можем согласиться, что мы столкнулись с запросом. Теги с Джанго, Питоном, начинающими.

вступление к контекстному процессору

Всем привет,

Мы все можем согласиться с тем, что мы столкнулись с Request.user в проекте Django. Вы когда-нибудь задумывались, что это было? Ну, это встроенный контекст процессор.

Контекстный процессор – это функция, которая принимает аргумент и возвращает словарь в качестве вывода. В нашем случае возвращающийся словарь добавляется в качестве контекста, и самое большое преимущество заключается в том, что его можно получить доступ к глобально I.e, через все шаблоны. Хотя это может показаться слишком сложным или трудно добиться, его на самом деле не так и очень просто реализовать.

Итак, сегодня мы посмотрим на создание динамического нижнего колонтитула, используя контекстный процессор – нижний колонтитул, который может сделать год динамически, довольно удобным, когда вам не нужно менять исходный код каждый год. Я предполагаю, что у вас есть проект Django, и уже построено приложение.

Создание динамического нижнего колонтитула с использованием контекста процессора

Во-первых, вам нужно создать файл с именем context_processors.py. Здесь мы добавим следующий код.

import datetime

def get_current_year_to_context(request):
    current_datetime = datetime.datetime.now()
    return {
        'current_year': current_datetime.year
    }

Во-вторых, вам необходимо указать свой процессор контекста в файле настроек.

TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': [os.path.join(BASE_DIR, '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.context_processors.get_current_year_to_context', # <-- Add your context processor
            ],
        },
    },
]

Вот и все. Ваш контекстный процессор теперь готов к использованию в ваших шаблонах, и его можно получить доступ с помощью ключа, который мы указали «Current_year». Итак, чтобы создать динамический раздел нижнего колонтитула, все, что мне нужно сделать, это сделать.

    Copyright {{ current_year }} - Heinek Halwin

Запустите свой проект, и вы видите, что год теперь виден как текущий год. Получайте удовольствие, используя это в ваших проектах.

Хорошего дня !

Оригинал: “https://dev.to/harveyhalwin/using-context-processor-in-django-to-create-dynamic-footer-45k4”