django - 如何将通用字典数据传递到 django 中的每个页面

标签 django django-templates

我有一个公共(public)数据(登录用户的消息号)要显示在每个页面上。我可以简单地传递给模板

dict={'messagenumber':5}
return render_to_response('template.html',dict,context_instance=RequestContext(request))

但是,如果我将这个 dict 数据传递到非常页面,它看起来很乏味。有没有更简单的方法将公共(public)数据传递到每个页面?

谢谢

最佳答案

只是为了节省某人的时间,如果是 django 新手

设置.py

TEMPLATE_CONTEXT_PROCESSORS = ("django.contrib.auth.context_processors.auth",
"django.core.context_processors.debug",
"django.core.context_processors.i18n",
"django.core.context_processors.media",
"django.core.context_processors.static",
"django.contrib.messages.context_processors.messages",
"home.context_processor.remote_ip")

在家庭应用程序中,创建一个名为 context_processor.py 的 python 文件

在 context_processor.py 添加这样的函数:
def remote_ip(request):
  return {'remote_ip': request.META['REMOTE_ADDR']}

在 {{ remote_ip }} 等模板中使用它

关于django - 如何将通用字典数据传递到 django 中的每个页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3221592/

相关文章:

python - 测试 Django 查询集 : self. assertListEqual vs self.assertQuerysetEqual

jquery - 比较两大组属性

javascript - django 将数据传递给 javascript 的最佳方式

python - 如何编辑 RedirectView 的 kwargs?

python - 为什么我在 Django formset_factory 中得到单个字段值?

django - UpdateView缺少QuerySet错误

django - 为 Django 创建自定义管理主题

python - Celery 为每个任务创建一个新连接

django - 如何在 Django html 模板中制作日期显示的快捷方式,例如,Thursday 14/07/2022 => Thu 14/07/2022

django - 如何传递一个url作为include的参数