2016-06-27 2 views
0

Djangoでログインを作成しましたが、動作したくありません。ユーザーが正しくログインすると、スクリプトはstart.htmlにリダイレクトされます。しかし、Djangoは、URLにユーザー名とパスワードを書き込むだけでページをリロードします。プロジェクトのログインDjangoが動作しない

view.py

from django.shortcuts import render, get_object_or_404 
from django.http import HttpResponse, HttpResponseRedirect 
from django.contrib.auth import authenticate, login 
from django.views.generic import View 

class Index(View): 
    def get(self, request): 
     return render(request, "index.html") 

    def user_login(request): 
     username = request.POST['username'] 
     password = request.POST['password'] 
     user = authenticate(username=username, password=password) 
     if user is not None: 
      if user.is_active: 
       login(request, user) 
       return HttpResponseRedirect('^start/') 
      else: 
       return HttpResponseRedirect('^err/') 
     else: 
      print ("Invalid login details") 
      return HttpResponseRedirect('^impressum/') 

urls.py:これで間違っている

from django.conf.urls import url 
from django.conf import settings 
from django.conf.urls.static import static 
from django.contrib import admin 
from alarm.views import * 
from impressum.views import * 
from login.views import * 

urlpatterns = [ 
    url(r'^$', Index.as_view()), 
    url(r'^admin/', admin.site.urls), 
    url(r'^start/', start.as_view()), 
    url(r'^terms/', impressum.as_view()), 
    url(r'^err/', error404.as_view()) 
] 

いただきましたか?

全コード:https://github.com/Croghs/stuport

あらゆる助けてくれてありがとうと申し訳ありませんのindex.htmlで<form method="post">に変更<form type="post">

答えて

1

の悪い英語

Croghsため。

+0

私はPOSTにクラスを変更し、メソッドにタイプを変更しましたが、今私は、空白のページにリダイレクトしています。( – Croghs

+0

私はあなたが「ポスト」をしたいと思います、ではない「POST」 – dyagmin

+0

それから彼はエラーを与える: 。 投稿者:/ post()は1つの位置引数をとりますが、2つは与えられました – Croghs

0

クラスベースのビューは「user_login」メソッドを認識しません。それは単に「投稿」と呼ばれるべきです。

+0

クラスを変更しましたPOSTに変更し、タイプをメソッドに変更しましたが、今は空のページにリダイレクトされます; – Croghs

関連する問題