models.py
class User(models.Model):
"""docstring for User"""
uname = models.CharField(max_length=200)
password = models.CharField(max_length=200)
date = models.DateTimeField(default=datetime.now, blank=True)
Views.py:
from models import User
def loginsave():
if request.method == 'POST':
name = request.POST.get('uname')
password = request.POST.get('pass')
users = Users.objects.filter(uname=name, password=password).count()
if users == 0:
return 0
elif users > 0:
return 1
あなたが投稿したユーザー名とパスワードのユーザーテーブルを照会し、返されたレコードの数を取得する必要がある最初の。
あなたの必要に応じてカウントを使用してください。
の代わりに、コードの重複を避けるために以下の手法を使用することをお勧めします。モデル内にクエリコードを書くことができれば、将来他の機能や他の関数で同様のチェックをしたい場合に備えて、重複を避けることができます。
models.py
class User(models.Model):
"""docstring for User"""
uname = models.CharField(max_length=200)
password = models.CharField(max_length=200)
date = models.DateTimeField(default=datetime.now, blank=True)
@staticmethod
def checkUserExists(un, pwd):
users = Users.objects.filter(uname=name, password=password).count()
if users == 0:
return 0
elif users > 0:
return 1
Views.py:
from models import User
def loginsave():
if request.method == 'POST':
name = request.POST.get('uname')
password = request.POST.get('pass')
return User.checkUserExists(un=name, pwd=password)
まず第一に、これは単に文書で答え些細な疑問です。第二に、**はこれをしない**;パスワードをクリアテキストで保存しないでください。 Djangoに組み込まれている認証システムを使用します。 –
あなたは何を試しましたか、その解決策についてはうまくいきませんでしたか? –
@DanielRoseman:はい私はデフォルトフォームを知っていますが、自分でテストする必要があります。この状態が何をすべきかを引き起こす場合。 – subhra