x
x
值 window.open("http://localhost:8000/accounts/facebook/login/?method=oauth2", "AskAFriend Facebook Login","menubar=0,toolbar=0;scrollbars=0;dialog=0;resizable=1,width=480px,height=320px");
上面的代码为facebook登录过程打开了一个新窗口,当完成重定向到我在django应用程序中设计的视图时,我通过在{{1}中为此视图提供URL来实现此目的在LOGIN_REDIRECT_URL
现在我需要一种方法来为此请求添加一个参数,该参数可以在登录完成后到达我的视图,我该如何实现?
我尝试将其添加到我在我的JS中使用的网址settings.py
(不起作用)(忽略*)
我已经阅读了有关使用自定义适配器覆盖window.open("http://localhost:8000/accounts/facebook/login/?method=oauth2&*valueofx=' + x* ...
函数的内容,但我无法弄清楚如何针对我的特定情况执行此操作
答案 0 :(得分:0)
您可以将LOGIN_REDIRECT_URL
更改为/redirect
之类的内容,而这又将成为'中介'用于控制用户重定向到的位置的视图。
该视图可能看起来像这样(未经测试):
from django.views.generic import View
from django.http import HttpResponseRedirect
class LoginRedirectIntermediary(View):
"""
Decides where a newly logged in user should go based on the request.
"""
def get(self, request, *args, **kwargs):
if request.user.is_superuser:
url = '/admin-panel/{}/'
else:
url = '/user-panel/{}/'
return HttpResponseRedirect(url.format(request.user.username))