1
回答
django重定向问题,求解答
利用AWS快速构建适用于生产的无服务器应用程序,免费试用12个月>>>   
@required_login(redirect="/build/login/")
@csrf_exempt
def IfMultiplyProHandler(request):
    request.session.get("login_user",False)
    userUtil = UserUtil(request)
    RedirectStr = request.REQUEST.get('RedirectStr', None)
    request.session["RedirectStr"] = RedirectStr
    if userUtil.projects:
        if len(userUtil.projects) >1:
            request.session["projects"] = userUtil.projects
            fileObj = open("test.log","a")
            print >>fileObj,"111111111111"
            fileObj.close()
            return HttpResponseRedirect("/build/selectProToDeploy/")
        else:
            request.session["project"] = userUtil.projects[0].name
            return HttpResponseRedirect(RedirectStr)
    
@required_login(redirect="/build/login/")
@csrf_exempt    
def SelectProToDeployHandler(request):
    if request.method == "GET":
        projects = request.session.get("projects",None)
        RedirectStr = request.session.get("RedirectStr",None)
        fileObj = open("test.log","a")
        print >>fileObj,"222222222222"
        fileObj.close()
        return render(request, 'buildDes/selectProToBuild.html',{"userProjects":projects})

  因为用户关联的项目组是多个,所以肯定走第一个的"if len(userUtil.projects) >1:"重定向到下面的函数中,可是我的打印结果却是:

111111111111
222222222222
222222222222
为什么我重定向的时候是两次呢????
举报
单蛙
发帖于2年前 1回/428阅
共有1个答案 最后回答: 2年前

个人原因,在redirect到的页面中有一个js引用错误

应该是:

<script src="{% static 'js/plugin/pace/pace.min.js' %}"></script>

我写的是:

 <script src="static/js/plugin/pace/pace.min.js"></script>

导致加载页面的时候,进行了如下的访问来获取js文件:

/build/selectProToDeploy/static/js/plugin/pace/pace.min.js

导致多了一次get请求!

唉,我什么时候才能不这么白呢,还冤枉了HttpResponRedirect。

顶部