Python django对根url本身使用默认登录
my URL.py文件继续Python django对根url本身使用默认登录,python,django,Python,Django,my URL.py文件继续 from django.conf.urls import patterns, url, include from users import views from users.forms import PickyAuthenticationForm urlpatterns = patterns('', url(r'^$','django.contrib.auth.views.login',{'template_name': 'registration/login
from django.conf.urls import patterns, url, include
from users import views
from users.forms import PickyAuthenticationForm
urlpatterns = patterns('',
url(r'^$','django.contrib.auth.views.login',{'template_name': 'registration/login.html'}),
url(r'^terms-conditions/', 'users.views.terms_view', name='terms_view'),)
在my setting.py文件中
LOGIN_REDIRECT_URL = '/terms_view/'
LOGIN_URL = ''
我的登录模板包含
{% extends "base-users.html" %}
<!--{% load staticfiles %}-->
{% block title %}<title>Sign In</title>{% endblock title %}
{% block content %}
<div class="container">
<form action="." method='POST' class="form-inline">{% csrf_token %}
<div class="form-group">
<input type="email" class="form-control" id="username" placeholder="Enter email" required>
</div>
<div class="form-group">
<input type="password" class="form-control" id="password" placeholder="Enter password" required>
</div>
<button type="submit" class="btn btn-primary">Login</button>
{{ form.username.errors }} {{ form.password.errors }}
</form>
{%extends“base users.html”%}
{%block title%}登录{%endblock title%}
{%block content%}
{%csrf_令牌%}
登录
{{form.username.errors}{{form.password.errors}}
{%endblock内容%}
我没有收到任何错误,页面仍在同一位置。表单未提交的原因。字段是表单的属性,而不是独立变量。你应该做:
{{ form.username.errors }} {{ form.password.errors }}
编辑
您还错过了表单本身的name
属性。否则浏览器将无法提交字段的任何数据
<form name="username" id="username" class="form-control" placeholder="..." required>
实际上,您应该使用Django表单本身来呈现字段:
<div class="form-group">
{{ form.username }}
</div>
{{form.username}
请设置表单元素的action和method属性,并
检查一下,我想会有用的
{%csrf_令牌%}
登录
{{username.errors}{{password.errors}}
我已经改变了这一点。还是有同样的问题。我没有得到错误现在我得到了错误。但它说,每次这个领域是必需的。事件(如果它有一些数据)是应该使用GET
请求的表单(可能不是,因为CSRF令牌被暴露了)?因为
标记在其他方面缺少method='POST'
属性。是的,我没有找到,但是。该字段有一些关于提交的数据,但错误表明该字段是必需的。请参阅下面Rajesh的回答:您的输入字段有ID,但没有名称。我在问题中也更改了这一点。该字段有一些提交数据,但错误表明该字段是必需的。您可以指定终端中出现错误的字段吗?您好,现在检查我的帖子,我已将name属性添加到输入字段,现在检查它,它肯定会工作。
<div class="container">
<form action="." method='POST' class="form-inline">{% csrf_token %}
<div class="form-group">
<input type="email" name="username" class="form-control" id="emailField" placeholder="Enter email" required>
</div>
<div class="form-group">
<input type="password" name="password" class="form-control" id="passwordField" placeholder="Enter password" required>
</div>
<button type="submit" class="btn btn-primary">Login</button>
{{ username.errors }} {{ password.errors }}
</form>
</div>