假设我们有一个带有博客模型的简单Django应用。
只有3页:
博客文章在3个位置列出:
在网站上看到的使用面包屑的主要方法有两种:
我希望能够使“ <返回”按钮返回到原始来源。
我知道这可以通过JavaScript完成。
但是在Django上,我听到人们在另一篇文章中说“您不应该在模板中重定向,而应该在视图中进行操作”,但是对我来说,这是没有道理的,因为视图应该如何知道自动返回哪个页面?
您将如何链接回到您从中到达博客帖子的源页面 (即另一篇文章,主页或博客索引) > 使用Django视图还是在Django模板中?
答案 0 :(得分:1)
我们可以在Django视图中使用request对象查找引荐链接。
这是此代码:
request.META['HTTP_REFERER']
您可以将以下代码添加到模板上下文中,以将链接添加到模板上下文中
{'previous_page': request.META['HTTP_REFERER']}
然后,我们可以使用包含按钮的链接将用户按下时重定向到上一页。
<a href = "{{previous_page}}"><button type="button">Back</button></a>
有关request.META词典的更多信息,在这里:
https://docs.djangoproject.com/en/dev/ref/request-response/#django.http.HttpRequest.META
希望这会有所帮助