如何在Django中自动刷新/重定向视图[重复]

Posted

技术标签:

【中文标题】如何在Django中自动刷新/重定向视图[重复]【英文标题】:How to auto refresh/redirect a view in Django [duplicate] 【发布时间】:2016-06-28 18:45:14 【问题描述】:

有没有办法在 Django 中经过设定的时间后自动重定向(或刷新)模板(或更好:它是底层的视图)?例如。通过使用Redirect view 或类似的东西?举个例子就好了。

基本上我需要近似 <meta http-equiv="refresh" content="60;url here">,但在 Django 中。当然,我确切地知道 html 中的元刷新标签是如何工作的——但这个问题与此无关(或与使用 JS 来达到相同的效果)。该标签有其自身的问题,例如它在 Opera Mini(对我的观众来说很重要的浏览器)中不起作用。

【问题讨论】:

Django 是服务器端,所以这不是你可以做的任何事情,这需要在客户端完成 Better duplicate 【参考方案1】:

您可以使用 javascript 来实现,例如:

window.setTimeout(function () 
    location.href = "http://myurl.com";
, 5000); // refresh/redirect after 5 seconds.

【讨论】:

感谢阿里的建议。我认为这是“B 计划”,因为在 Django 内部进行本机操作仍然是我的首要任务,原因超出了这个问题的范围。 我不相信您可以刷新使用您的后端发送给客户端的页面;一旦页面发送到客户端,您就无法控制它。 @HassanBaig 是的,你可以,只需将它们添加到 <script> 中。如果您希望服务器确定重定向 url 是什么,请将其传递给您的模板,然后 location.href = " redirect_url "; 确认一下,这个应该放在模板的中吧? @HassanBaig 无论放在哪里都可以使用。

以上是关于如何在Django中自动刷新/重定向视图[重复]的主要内容,如果未能解决你的问题,请参考以下文章

用于重定向的 Django 自定义装饰器

如何在 Django 视图中检测重定向

如何在 Django 1.3 中使用基于类的视图重定向条件?

Django 使用绑定表单重定向到另一个视图

如何在 Django 中使用基于类的视图将用户重定向到登录页面? [复制]

如何在 Django 中重定向到外部 URL?