Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/amazon-web-services/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Django 登录重定向后未触发$routeProvider_Django_Angularjs_Angularjs Routing - Fatal编程技术网

Django 登录重定向后未触发$routeProvider

Django 登录重定向后未触发$routeProvider,django,angularjs,angularjs-routing,Django,Angularjs,Angularjs Routing,我有一个基本的Django应用程序(Django 1.7),带有使用基本路由的AngularJS(1.2.19)前端。首次访问站点时,路由将正确加载并在ng视图中显示内容。但是,如果我转到/login并成功登录到站点(默认的Django登录页面),我将被重定向到主页,并且无法在ng视图中加载路由。我必须重新加载页面(通常两次)或清除缓存才能加载ng视图中的内容。即使单击“我的模板”中的链接也无法显示ng视图内容。重定向后如何强制在ng视图中加载内容 home.html <html>

我有一个基本的Django应用程序(Django 1.7),带有使用基本路由的AngularJS(1.2.19)前端。首次访问站点时,路由将正确加载并在ng视图中显示内容。但是,如果我转到/login并成功登录到站点(默认的Django登录页面),我将被重定向到主页,并且无法在ng视图中加载路由。我必须重新加载页面(通常两次)或清除缓存才能加载ng视图中的内容。即使单击“我的模板”中的链接也无法显示ng视图内容。重定向后如何强制在ng视图中加载内容

home.html

<html>
  <head>
    <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.19/angular.js"></script>
    <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.19/angular-route.js"></script>
  </head>
  <body ng-app="testyApp">
    <h1>Routing Test</h1>
    <ul>
      <li><a href="#/">Default</a></li>
      <li><a href="#/test">Other</a></li>
    </ul>

    <div ng-view></div>

    <script type="text/javascript" src="/static/main.js"></script>
  </body>
</html>
views.py

from django.shortcuts import render


def home(request):
    return render(request, 'home.html')
login.html

{% extends 'base.html' %}
{% block header_text %}Login{% endblock %}
{% block content %}
<form name="loginForm" 
      method="post" 
      action="{% url 'django.contrib.auth.views.login' %}">
    {% csrf_token %}
    {% for field in form %}
    <div>
      {{ field.label_tag }}
      <br>
      {{ field }}
    </div>
    {% endfor %}
    <div>
      <input type="submit" 
             value="Login"
             id="id_submit">
    </div>
</form>
{% endblock %}
{%extends'base.html%}
{%block header_text%}登录名{%endblock%}
{%block content%}
{%csrf_令牌%}
{%形式的字段为%}
{{field.label_tag}

{{field}} {%endfor%} {%endblock%}
更多信息
经过一些更深入的测试,这个问题似乎与使用Chrome作为我的测试浏览器无关。对于Firefox和Safari(未测试Opera),ng视图在登录页面重定向后按预期加载。我不知道为什么会这样。如有任何解释,我们将不胜感激。

请打开chrome开发工具,并告知我们在重定向阶段控制台中是否出现任何错误。我认为没有任何错误。当使用AWS部署测试站点时,我的问题消失了。我可能很容易出错,但这让我觉得这个错误实际上是由于Django开发服务器的问题造成的。这听起来肯定是一个特定于环境的问题,但chrome会告诉你更多(在开发控制台中)。铬不合格是很常见的。
from django.shortcuts import render


def home(request):
    return render(request, 'home.html')
{% extends 'base.html' %}
{% block header_text %}Login{% endblock %}
{% block content %}
<form name="loginForm" 
      method="post" 
      action="{% url 'django.contrib.auth.views.login' %}">
    {% csrf_token %}
    {% for field in form %}
    <div>
      {{ field.label_tag }}
      <br>
      {{ field }}
    </div>
    {% endfor %}
    <div>
      <input type="submit" 
             value="Login"
             id="id_submit">
    </div>
</form>
{% endblock %}