Встречается на 1% собеседований по Python
Для чего нужен контекстный процессор (context processor)
Контекстный процессор в Django — это функция, которая добавляет данные в контекст всех шаблонов автоматически. Это удобно, когда одни и те же данные нужны во множестве представлений (например, текущий пользователь, настройки сайта, корзина покупок).
Пример:
python
# settings.py
TEMPLATES = [
{
'OPTIONS': {
'context_processors': [
'myapp.context_processors.site_settings',
],
},
},
]
myapp/context_processors.py
def site_settings(request):
return {'SITE_NAME': 'My Awesome Site'}
text
Теперь `SITE_NAME` доступен во всех шаблонах без явной передачи из каждого view.
**Нюансы:**
- Контекстные процессоры выполняются для каждого запроса, поэтому не стоит нагружать их тяжелой логикой.
- Данные из них переопределяются локальным контекстом view.
- Можно использовать как встроенные (`django.template.context_processors.request`), так и кастомные.
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
Похожие вопросы
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы