首页 > 数据库 >7-8 连接数据库做一个登录操作-数据库反映射数据模型到models

7-8 连接数据库做一个登录操作-数据库反映射数据模型到models

时间:2022-11-27 17:14:31浏览次数:39  
标签:polls models 数据库 py request 数据模型

一、连接数据库做一个登录操作

依据上篇博客,在polls文件夹下继续操作

1. 在model.py中添加数据模型

from django.db import models

# Create your models here.
class StudentInfo(models.Model):
    Stu_id=models.CharField(primary_key=True,max_length=20)
    stu_name=models.CharField(max_length=20)
    stu_pwd=models.CharField(max_length=20)

2. 将数据模型迁移到数据库

  • 数据库要提前登录,再执行下面的命令
python manage.py makemigrations polls
#(polls是应用明)
python manage.py migrate
  • 第一条命令对应的结果
    image
  • 第二条命令对应的结果
    image

3. 确保数据库里面存在数据

image

4. 在view.py中编写判断逻辑

image

点击查看代码
from django.http import HttpResponse
from django.shortcuts import render
from .models import *
# Create your views here.

def toLogin_view(request):
    return render(request,'login.html')
def Login_view(request):
    ## 7 实现数据库判断
    u=request.POST.get('user','') #用post实现保密性
    p=request.POST.get('pwd','')
    if u and p:
        c=StudentInfo.objects.filter(stu_name=u,stu_pwd=p).count()  #判断匹配的有多少条
        if c>=1:
            return HttpResponse("登录成功!")
        else:
            return HttpResponse("账号或密码错误")
    else:
        return HttpResponse("请输入正确的账号或密码")

5. 运行代码

  • 启动服务器
python manage.py runserver

二、 数据库反映射数据模型到models

  • 现在数据库中创建对应的表
    image
    image

  • 进行数据库表到models.py文件的映射,控制台执行下面的命令

python manage.py inspectdb>polls/models.py  #polls表示应用名

image

标签:polls,models,数据库,py,request,数据模型
From: https://www.cnblogs.com/yuyingblogs/p/16930068.html

相关文章

  • 为什么我做数据库类的程序要用代码生成器,而且是前前后后,反反复复 [转]...
    前几篇文章提到改善工作效率的工具,这此工具对我们日常开发或多或少的有些改善。有网友对代码生成器感兴趣,有些工具还会可能会改变你开发数据库软件的思路和模式,这里我也来......
  • 数据库知识回顾
    线程与MySQL回归线程相关知识线程理论进程 进程是资源单位线程 线程是执行单位一个进程内至少有一个线程1.一个进程内可以开设多个线程2.同一个进程下的多个线程......
  • listener不能交给spring进行管理,需要自己new,不能注入其他对象,不能实现数据库操作
    ​​mybatis​​原生QueryWrapper<EduSubject>wrapperTwo=newQueryWrapper();wrapperTwo.ne("parent_id","0");.....业务和技术有区别的,业务是需要什么条件,输出什么结......
  • MYSQL数据库(索引,事务与存储引擎)
    一、MySQL索引1.1索引的概念 索引是一个排序的列表,在这个列表中存储着索引的值和包含这个值的数据所在行的物理地址(类似于C语言的链表通过指针指向数据记录的内存地......
  • MySQL数据库管理 _
    一、MySQL数据库管理1.1库和表 数据库–>数据表–>行(记录):用来描述一个对象的信息_______________列(字段):用来描述对象的一个属性常用的数据类型 int:整型float:......
  • MySQL数据库用户管理以及数据库用户授权
    一、用户管理1.1新建用户 CREATEUSER'用户名'@'来源地址'[IDENTIFIEDBY[PASSWORD]'密码']; ‘用户名’:指定将创建的用户名‘来源地址’:指定新创建的用户可......
  • 数据库主键的生成
    1.分布式唯一ID特性在业务开发中,会存在大量的场景都需要唯一ID来进行标识。比如,用户需要唯一身份标识;商品需要唯一标识;消息需要唯一标识;事件需要唯一标识等等。尤其......
  • mySql数据库 forUpdate 实战总结
    悲观锁,正如其名,它指的是对数据被外界(包括本系统当前的其他事务,以及来自外部系统的事务处理)修改持保守态度,因此,在整个数据处理过程中,将数据处于锁定状态。悲观锁的实现,往往依......
  • 关于 SAP HANA 数据库的死锁问题(deadlock)
    一个朋友在我的知识星球里提问:hana数据库发生死锁后,会自动解开吗?还是会等着自动超时后报错。笔者在15年的SAP开发生涯中对HANA数据库接触得比较少,这里只能根据......
  • Mysql数据库用户管理,授权,索引
    一、Mysql用户管理1、新建用户CREATEUSER‘用户名’@‘来源地址’[IDENTIFIEDBY[PASSWORD]'密码‘];'用户名':指定将创建的用户名.'来源地址':指定新创建的用户可在哪......