python django--簡単な登録/ログイン/session
2725 ワード
登録セッション
user.html
{useform}}を使用せずに{userform.password}}形式を使用すると、後期cssスタイルが容易になります.
form.py
models.py
viesw.py
Webページ
Cookie保存sessionid
django_セッションテーブルの内容
転載先:https://blog.51cto.com/13606158/2071892
user.html
{useform}}を使用せずに{userform.password}}形式を使用すると、後期cssスタイルが容易になります.
Title
form.py
#/usr/bin/env python3
from django import forms
class UserForm(forms.Form):
username=forms.CharField()
password=forms.CharField()
models.py
from django.db import models
class User(models.Model):
username=models.CharField(max_length=30)
password=models.CharField(max_length=30)
def __str__(self):
return self.username
viesw.py
from django.shortcuts import render
from django.views.decorators.cache import cache_page
from .models import User
# Create your views here.
from django.http import HttpResponse
from django.http import HttpResponseRedirect
from djapp.forms import UserForm
def user(request):
if request.method == 'POST':
userform=UserForm(request.POST)
if userform.is_valid():
if request.POST.get('reg'):
username=userform.cleaned_data['username']
password=userform.cleaned_data['password']
User.objects.create(username=username,password=password)
# user=User()
# user.username=username
# user.password=password
# user.save()
return HttpResponse("login %s"%username)
else:
if request.session.get('user_id') == 3:
return HttpResponse("session ")
else:
try:
user=User.objects.get(username=request.POST.get('username',None))
except Exception as e:
print(e)
return HttpResponse(" ")
if user.password == request.POST.get('password'):
request.session['user_id']=user.id
return HttpResponse(" ")
else:
return HttpResponse(" ")
else:
userform=UserForm()
return render(request,'djapp/user.html',{'userform':userform})
Webページ
Cookie保存sessionid
django_セッションテーブルの内容
転載先:https://blog.51cto.com/13606158/2071892