2014-11-24 73 views
0

我限制您访问我的客户门户以强制客户访问主站点以增加每日流量的方式。然而,我试图找出如何重新编写Django中的网址,但我不太清楚如何。如何在django中重写网址

该文档是有点这个问题上的consufing。我想要重写的网址是http://127.0.0.1:8000/?enki=0011

我需要取下那个?enki = 0011的部分,因为这实质上就是检查。如果用户在访问登录页面时在URL中有该用户,则允许他们登录。但是,如果他们不这样做,它会将它们重定向到主站点。

+0

@davidism它来自一个joomal网站这就是问题的主要网站没有在django编程。 – 2014-11-24 20:55:55

回答

1

返回重定向将从URL中“删除”查询字符串。店面视图检查查询字符串是否在url中,在会话中设置一个标志,然后重定向。如果该字符串不存在,并且未设置会话标志,则会重定向到其他网站。

def storefront(request): 
    if request.GET.get('enki') == '0011': 
     request.session['from_main_site'] = True 
     return redirect('storefront') 
    elif not request.session.get('from_main_site'): 
     return redirect('http://main-site.com/') 

    # at this point the user has come from the main site 
    # and doesn't have "enki" in the url 

    return render(request, 'storefront.html')