【问题标题】:Django redirect is not workingDjango重定向不起作用
【发布时间】:2017-07-05 22:20:09
【问题描述】:
def CompleteMini(request, mini_id):
    mini_instance = get_object_or_404(url_all, mini_address = mini_id)
    return redirect(mini_instance.full_address)

我有这段代码,但它没有明确重定向到作为参数提供的 URL。相反,它只是将当前 url 附加到这个。

【问题讨论】:

  • 打印需要重定向到的 url
  • 但是当我使用重定向时,它会转到,例如 - 而不是 www.foodtraingle.in 它转到127.0.0.1:8000/app/ezoxaa/foodtriangle.in
  • Django 正在执行相对重定向。您可以添加一个方案以使其成为绝对重定向

标签: python django web django-models django-views


【解决方案1】:

听起来您在 mini_instance.full_address 变量中有一个相对 url。你要确保它也有 http:// 部分,这样它就会完全重定向到新的 url,而不是尝试去相对于你所在的 django 站点的它。

这是来自相对和绝对 url 文档的示例

def my_view(request):
    ...
    return redirect('/some/url/')

这也适用于完整的 URL:

def my_view(request):
    ...
    return redirect('https://example.com/')

https://docs.djangoproject.com/en/1.10/topics/http/shortcuts/#redirect

【讨论】:

    猜你喜欢
    • 2014-11-22
    • 2018-05-14
    • 1970-01-01
    • 2010-12-15
    • 2016-07-26
    • 2011-01-16
    • 1970-01-01
    • 2017-05-03
    相关资源
    最近更新 更多