1.没有注册账号,判断,提示该账户未注册,注册后写入数据库(mysql)
2.登录功能 --暂且提示登陆成功;空用户名提示、中文字符提示,不存在提示
登录模板层:
测试登录
url
urlpatterns = [
path('admin/', admin.site.urls),
path('index/', views.index),
path('sign/', views.sign),
path('login/', views.login),
视图层
def login(request):
return render(request,'login.html',{'test':request.method})
def login_action(request):
if request.method =='POST':
user = request.POST.get('username')
password = request.POST.get('password')
if len(user)== 0 or len(password)==0:
# response = HttpResponseRedirect('/login_right/')
# response.set_cookie('user', user, 3600)
# request.session['user'] = user
# return response
return render(request, 'login.html',{'error':'用户名密码不能为空'})
else:
for _char in user:
if 'u4e00' <= _char <= 'u9fa5':
return render(request, 'sign.html',{'error':'用户名不能包含中文字符'})
user_list = models.Admin.objects.all()
logger.debug('开始判断用户:{}{}'.format(user,password))
for judge_user in user_list:
if judge_user.user == user and judge_user.password == password:
response = HttpResponseRedirect('/login_right/')
response.set_cookie('user', user, 3600)
models.Admin.objects.create(user = user,password=password)
request.session['user'] = user
return response
else:
continue
@login_required
def login_right(request):
user =request.COOKIES.get('user','')
# user =request.session.get('user','')
return render(request,'login_action.html',{'user':user}
模型层
class Student(models.Model):
"""
创建如下几个表的字段
"""
# 学号 primary_key=True: 该字段为主键
studentNum = models.CharField('学号', primary_key=True, max_length=15)
# 姓名 字符串 最大长度20
name = models.CharField('姓名', max_length=20)
# 年龄 整数 null=False, 表示该字段不能为空
age = models.IntegerField('年龄', null=False)
# 性别 布尔类型 默认True: 男生 False:女生
sex = models.BooleanField('性别', default=True)
# 手机 unique=True 该字段唯一
mobile = models.CharField('手机', unique=True, max_length=15)
# 创建时间 auto_now_add:只有在新增的时候才会生效
createTime = models.DateTimeField(auto_now_add=True)
# 修改时间 auto_now: 添加和修改都会改变时间
modifyTime = models.DateTimeField(auto_now=True)
hobby = models.CharField(max_length=13,default="study")
'''登录用户'''
class Admin(models.Model):
user =models.CharField(max_length=20)
password = models.CharField(max_length=20)



