当前位置: 首页 > 面试题库 >

始终在django模板上下文中包括用户

闻人吕恭
2023-03-14
问题内容

我正在为一家小型公司的小型Intranet网站工作,用户应该可以在其中发布信息。我想象过一种非常简单的身份验证机制,人们只需输入他们的电子邮件地址,并向其发送唯一的登录网址即可,该网址设置了一个cookie,该cookie可以始终为将来的请求标识他们。

在我的模板设置中,我有base.html,其他页面对此进行了扩展。我想在base.html中显示“登录”或“注册”按钮,但是如何确保必要的变量始终是上下文的一部分?似乎每个视图只是按照自己的喜好设置了上下文,并且没有全局上下文人口。有没有没有在每个上下文创建中都包含用户的方法?

还是我必须制作自己的自定义快捷方式才能正确设置上下文?


问题答案:

从更一般的意义上讲,不必在每个视图中显式设置变量,这听起来像是您想研究编写自己的上下文处理器。

从文档:

上下文处理器具有一个非常简单的接口:它只是一个Python函数,它带有一个参数,一个HttpRequest对象,并返回添加到模板上下文的字典。每个上下文处理器必须返回一个字典。



 类似资料:
  • 问题内容: 我正在为一家小型公司的小型Intranet网站工作,用户应该可以在其中发布信息。我想象过一种非常简单的身份验证机制,人们只需输入他们的电子邮件地址,并向其发送一个唯一的登录URL,该URL就会设置一个cookie,该cookie将始终为将来的请求标识他们。 在我的模板设置中,我有base.html,其他页面对此进行了扩展。我想在base.html中显示“登录”或“注册”按钮,但是如何确

  • 问题内容: 我想在2个不同的基本文件中提供相同的内容。 所以我正在尝试这样做: page1.html: page2.html: 问题是我似乎无法同时使用扩展和包含。有什么办法吗?如果没有,我该如何完成以上工作? commondata.html覆盖base1.html和base2.html中指定的块 这样做的目的是提供pdf和html格式的同一页面,但格式略有不同。上面的问题虽然简化了我要尝试做的事

  • 问题内容: 我有一个奇怪的问题,我想使用上下文处理器添加全局查询。这是我通过以下方法做到的: 这样在我的应用中创建了一个processor.py: 并在我的setting.py结尾处添加了以下内容: 最后,我通过以下观点: 在我的index.html模板上: 最后是我的网址: 我的foos显示没有问题,但是我的media_url和其他上下文消失了。可能是什么问题 问题答案: 当你指定时: 在设置文

  • 问题内容: 我有一个表单,可以在用户输入信息后重定向到同一页面(以便他们可以继续输入信息)。如果表单提交成功,我将返回 效果很好。但是,在这种情况下,我还想向用户显示一些消息(例如,屏幕顶部的“您的数据已保存”)。如果不进行重定向,我只会在上下文字典中返回这些消息。但是,有了重定向,我无法做到这一点。 那么在使用HttpResponseRedirect时如何传递模板上下文信息? 我正在尝试做的事情

  • 问题内容: 我是Django的新手,我仍在尝试掌握其功能。我使用Django 1.4.2创建了一个非常简单的项目,该项目的索引页面具有简单的形式,你可以在其中输入内容,结果页面在提交后显示输入内容(下面的代码)。 提交后,我收到错误403和以下消息: index.html result.html views.py 我已经研究了Internet上的文档和各种示例,但是我不明白自己在做什么错。如果我在

  • 问题内容: 我是Django的新手,我正尝试通过一个正在开发的简单项目“ dubliners”和一个名为“ book”的应用程序来学习它。目录结构是这样的: 我有一个JPG文件,需要在每个网页的页眉中显示。我应该在哪里存储文件?我应该使用哪个路径来使用模板显示标签?我已经尝试过各种位置和路径,但到目前为止没有任何效果。 … 感谢您在下面发布答案。但是,我尝试了图像的相对路径和绝对路径,但仍然在网页