加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

django – 如何在模板中设置重定向URL?

发布时间:2020-12-20 11:22:14 所属栏目:Python 来源:网络整理
导读:我在 Python 2.7.1下使用django-social-auth和Django 1.3.1.我一直在寻找各地,我无法弄清楚如何使用自定义重定向网址进行Twitter身份验证(或其他提供商). 我已经读过我需要在我的html模板中使用这个模板标签来构建启动过程的链接: {% url socialauth_begin
我在 Python 2.7.1下使用django-social-auth和Django 1.3.1.我一直在寻找各地,我无法弄清楚如何使用自定义重定向网址进行Twitter身份验证(或其他提供商).

我已经读过我需要在我的html模板中使用这个模板标签来构建启动过程的链接:

{% url socialauth_begin 'twitter' %}

使用我的settings.py文件中的值为LOGIN_REDIRECT_URL可以正常工作(虽然,请参阅我的问题:Twitter takes users to /en/logged-in/ regardless of my settings)但是,在这种特殊情况下,我需要在返回时将用户重定向到特殊的URL.

我在其他地方读过我需要将带有重定向值的变量’next’传递给模板或作为twitter auth url上的参数传递.这是怎么做到的?我的模板作为HttpResponse加载,因此,虽然我当然可以传递模板值,但我不清楚如何在上面的模板标签中使用它们.

对不起这个基本问题.

解决方法

好吧,我知道这很简单,即使问这个也觉得有点傻.我想我认为django-social-auth有这样做的特殊规定,但显然,这是非常手工的.这是最终在这里结束的其他人的解决方案:

在你看来:
????…
????来自django.utils.http import urlquote
????…

def my_view(request,...):
  ...
  redirect_url = urlquote("http://your_required_redirect_url/")
  ...
  return render_to_response('your_template.html',{ 'redirect_url' : redirect_url })

在’your_template.html’中:

...
Login with <a href="{% url socialauth_begin 'twitter' %}?next={{ redirect_url }}">Twitter</a>
...

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读