views 业务处理逻辑

发布时间 2023-07-25 11:36:01作者: 马越月
from django.shortcuts import render,redirect
from firstapp import models
# Create your views here.
from firstapp.models import UserInfo


def fristhtml(requset):
if requset.method =="GET":
list_info = models.UserInfo.objects.all()
return render(requset,"index.html",{"list_info":list_info})

#登录
def Login(request):
if request.method == "GET":
return render(request,"login.html")
phone=request.POST.get("phone")
pwd=request.POST.get("pwd")
user=models.UserInfo.objects.filter(phone=phone).first()
if not user is None:
if user.pwd==pwd:
request.session["info"]={"name":user.name,"id":user.id}
request.session.set_expiry(60*60*6)
return redirect('/index')
else:
return render(request, 'login.html', {"error_msg": "密码不正确"})
else:
return render(request, 'login.html', {"error_msg": "用户不存在"})

# 登录成功跳转到我主页

#注册
def register(request):
if request.method =="GET":
return render(request,"register.html")
user=request.POST.get("user")
pwd=request.POST.get("pwd")
pwd1=request.POST.get("pwd1")
phone=request.POST.get("phone")
print(user)
phones = list(UserInfo.objects.values_list('phone',flat=True))
print(phones)
if pwd ==pwd1:
if phone in phones:
return render(request, "register.html", {"error_msg": "用户已存在"})
else:
models.UserInfo.objects.create(name=user,pwd=pwd,phone=phone)
return render(request,"register.html",{"error_msg": "注册成功"})
else:
return render(request,"register.html",{"error_msg": "两次密码不一致,请重新输入"})
#主页
def index(request):
#models.UserInfo.
'''
bookname=request.POST.get("bookname")
print(bookname)
if bookname:
info = models.BookInfo.objects.filter(title=bookname).first()
return render(request, "select.html", {"list_info": info})
'''
if request.method == "GET":
id = request.GET.get("nid")
print(id)
if id:
models.BookInfo.objects.filter(id=id).delete()
list_info = models.BookInfo.objects.all()
return render(request, "book.html", {"list_info": list_info})
bookname = request.POST.get("bookname")
print(bookname)
if bookname:
info = models.BookInfo.objects.filter(title__contains=bookname)
if info:
return render(request, "book.html", {"list_info": info})
else:
return render(request, "book.html", {"error_msg": "没有此书籍"})
else:
list_info = models.BookInfo.objects.all()
print(len(list_info))
return render(request, "book.html", {"list_info": list_info})
#添加书籍
def addbook(request):
if request.method == "GET":
return render(request,"addbook.html")
title=request.POST.get("title")
name=request.POST.get("name")
time=request.POST.get("time")
price=request.POST.get("price")
models.BookInfo.objects.create(title=title,name=name,time=time,price=price)
return render(request,"addbook.html")
#修改书籍
def update(request):
id = request.GET.get("nid")
'''
if id:
print(id)
info=models.BookInfo.objects.filter(id=id).first()
print(info.name)
return render(request, "update.html", {"info": info})
if request.method == "GET":
return render(request,"update.html")
'''
if request.method == "GET":
info = models.BookInfo.objects.filter(id=id).first()
return render(request,"update.html",{"info": info})
title = request.POST.get("title")
print(title)
name = request.POST.get("name")
time = request.POST.get("time")
price = request.POST.get("price")
models.BookInfo.objects.filter(id=id).update(title=title, name=name, time=time, price=price)
return redirect('/index')

def delect(request):
request.session.clear()
return render(request, 'login.html')