我使用html格式创建登录页面:
<form method="post">
{% csrf_token %}
<input type="text" name="loginInput" id="loginField" placeholder="Login" required="required" class="form-control"/><br/>
<input type="password" name="passwordInput" id="passwordField"maxlength="30" placeholder="Hasło" required="required" class="form-control"/><br/>
<input type="submit" value="Zaloguj się" class="loginbtn btn-primary btn-lg btn-block"/><br/><br/>
</form>
和forms.py
:
from django.contrib.auth.models import User
from django import forms
class AuthForm(forms.ModelForm):
class Meta:
model = User
fields = ['username', 'email', 'password']
当然还有views.py
:
class UserFormView(View):
form_class = AuthForm
template_name = 'music/registration_form.html'
def get(self, request):
form = self.form_class(None)
return render(request, self.template_name, {'form': form})
def post(self, request):
form = self.form_class(request.POST)
if form.is_valid():
username = form.cleaned_data['username']
password = form.cleaned_data['password']
user = authenticate(username=username, password=password)
if user is not None:
if user.is_active:
login(request, user)
return redirect('users:index')
但是当点击提交按钮应用返回空白页面时:
不允许的方法(POST):/ [05 / Mar / 2017 00:15:55]“POST / HTTP / 1.1” 405 0
任何人都可以帮我找到我做错的地方吗?
由于