增加数据
在acsign/models.py中创建用户数据:
class Users(models.Model):
u_name = models.CharField(max_length=10)
u_password = models.CharField(max_length=255)
u_ticket = models.CharField(max_length=30, null=True)
在acsign/admin.py中增加如下代码可以在admin中显示新增数据Users:
admin.site.register(Users)
在控制台输入如下代码,更新数据库:
python manage.py makemigrations acsign
python manage.py sqlmigrate acsign 0002
python manage.py migrate
登录代码
在acsign/views.py中加入登录判断逻辑
def login(request):
if request.method == 'GET':
return render(request, 'acsign/login.html')
if request.method == 'POST':
# 如果登录成功,返回baidu界面
name = request.POST.get('name')
password = request.POST.get('password')
# 查询用户是否在数据库中
if Users.objects.filter(u_name=name).exists():
user = Users.objects.get(u_name=name)
if check_password(password, user.u_password):
return HttpResponseRedirect('')
else:
return render(request, 'acsign/login.html', {'password': '用户密码错误'})
else:
return render(request, 'acsign/login.html', {'name': '用户不存在'})
其中登录布局页面如acsign/acsign/login.html文件中所示:
登录页面
{% csrf_token %}
登录学号:
登录密码:
点击注册
进入网址http://127.0.0.1:8000/acsign/login/进行登录,见面如下:
注册代码
和登录类似在acsign/views.py中增加注册逻辑:
def regist(request):
if request.method == 'GET':
return render(request, 'acsign/regist.html')
if request.method == 'POST':
# 注册
name = request.POST.get('name')
password = request.POST.get('password')
# 对密码进行加密
password = make_password(password)
Users.objects.create(u_name=name, u_password=password)
return HttpResponseRedirect(reverse('acsign:login'))
在acsign/acsign/regist.html中对注册界面简单编辑:
注册页面
{% csrf_token %}
注册学号:
注册密码:
点击“点击注册”链接进入:
http://127.0.0.1:8000/acsign/regist/ 页面,如下:
如果觉得《django登录注册html页面 Django实现页面注册登录界面》对你有帮助,请点赞、收藏,并留下你的观点哦!