【问题标题】:How to redirect from payment page to index page如何从支付页面重定向到索引页面
【发布时间】:2021-04-28 06:36:04
【问题描述】:

付款后,我已经重定向到成功页面了。

form action="success" method="POST"

视图标签

def success(request):
    return render(request, 'success.html')

现在我希望页面在一小段延迟后自动重定向到索引/主页。

如何实现。有人可以帮忙吗?

【问题讨论】:

    标签: python django redirect django-views


    【解决方案1】:

    使用return redirect('index') 代替return render(request, 'success.html'),其中index 是index 的URL 名称。确保在 urls.py 中有一个 indexpath('index',views.index,name='index') 的 url

    【讨论】:

    • 首先,我想向用户展示他们的支付成功,然后我想将其重定向到索引页面。所以我将它渲染到成功页面,然后需要一个非常小的延迟,然后将它重定向到索引页面。有没有其他方法可以实现它,我是否试图做错?
    • 您可以使用time.sleep。首先重定向到成功页面,然后使用time.sleep(n),其中n 是秒数。然后重定向到索引页
    【解决方案2】:

    我认为您可以通过在 javascript 中使用 setTimeoutwindow.location.href 来实现这一点。

    在这里使用time.sleep 是另一种选择,但这会使请求停止几秒钟,这可能会导致请求超时。

    成功

    def success(request):
        return render(request, 'success.html')
    

    成功.html

    <script>
    function redirect () {
            var x = setTimeout(function () {
                window.location.href = "{% url 'index' %}";
                window.clearTimeout(x);     // clear time out.
            }, 5000);
    </script>
    

    【讨论】:

      猜你喜欢
      • 2020-11-05
      • 2018-04-27
      • 2012-06-14
      • 2019-08-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-11-29
      相关资源
      最近更新 更多