我想知道是否有任何方法可以为 django 中的所有页面发送默认上下文,例如无论其他上下文如何,用户总是传递到模板,对于我的特殊情况,我想将导航栏的上下文(例如类别和子类别)发送到所有页面,而无需发送所有视图。
TIA
您可以通过创建上下文处理器来实现这一点。创建一个上下文处理器.py在任何应用程序中,我建议在您的主应用程序上执行此操作。在这里您可以创建上下文词典。就像这样:
from product.models import SubCategory, Category
def add_variable_to_context(request):
return {
'subCategories': SubCategory.objects.order_by('id').all(),
'categories': Category.objects.order_by("id").all(),
}
将此行添加到您的模板 in 设置.py调用创建的上下文处理器
'OPTIONS': {
'context_processors': [
....
'yourAppName.context_processors.add_variable_to_context',
....
],
},
现在您可以在您的中调用您创建的上下文字典基本.html
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)