Как следует из названия, я установил обработчик ввода, но он работает не для всех шаблонов моей страницы, а только для некоторых из них, но не для всех.
Я создал context_processor.py внутри своего приложения.
def categories_processor(request):
enterprise = enterprisedata.objects.get(id=0)
return {'enterprise': enterprise}
Я слышал, что это все, что мне нужно для этого.
Но это некоторые шаблоны, когда я пытаюсь вызвать его, например:
{% block title %}
<title>{{enterprise.name}} | Carrito</title>
{% endblock %}
Не работает.
Любая помощь? что-то, чего мне не хватает? Спасибо!






Вам нужно добавить его в настройках context_processors (внутри файла settings.py) в Django:
'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',
'django.template.context_processors.media',
'path.to.context_processor.categories_processor'
],
},Вы должны добавить этот context_processor в файл вашего проекта settings.py следующим образом:
TEMPLATES = [
{
......
'OPTIONS': {
'context_processors': [
.........
'yourapp.context_processor.categories_processor',
],
},
@LuisBermúdez все, что вам нужно сделать, это указать правильный путь для вашей функции def categories_processor(request):
Как мне это сделать? извините, я новичок в джанго :(
Вы написали def categories_proccessor(request): внутри your_app/context_processor.py? Если это так, то это решение должно работать.
Извини, моя ошибка. Я поставил «apps.adminview.context_processor.enterprise_processor» вместо «adminview.context_processor.enterprise_processor», и это работает, спасибо!
Мое приложение называется «adminview», я выразился так: adminview.context_processor.enterprise_processor, но там написано «Нет модуля с именем adminview».