Python必备秘籍

Django之ORM操作集合

2020-03-07  本文已影响0人  TestingShare

先在Django中找到配置数据库的信息,在setting下找到database进行修改

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql', #链接的数据库类型
        'HOST':'127.0.0.1',#连接数据库的地址
        'PORT':'3306', #端口号
        'NAME':'testingshare',  #数据库名称
        'USER':'root', #用户
        'PASSWORD':'123456' #密码
    }
}

这是对django进行数据库配置,但不能直接连接到mysql,需要通过第三方模块pymysql进行连接

在项目下的setting同级的init文件写入

import pymysql
# 告诉django使用pymysql代替MySQLdb
pymysql.install_as_MySQLdb()

之后就可以通过django来创建表了
在app下models.py里编写创建数据库表操作
每一个类对应一张表,对象对应字段

class UserInfo(models.Model): #创建的类必须继承models.Model
   id = models.AutoField(primary_key=True) #AutoField()代表自增字段值,标示每次插入数据都会自动+1,primary_key 代表主键
  name = models.CharField(null=False,max_length=20,unique=True) # 创建一个varchar类型的不能,null=False表示不能为空,max_length添加内容的长度最大多少字符,unique=True 表示不能重复

执行命令将代码创建成数据库表
python manage.py makemigrations
python manage.py migrate

查询:

models.UserInfo.objects.all() #查找表中所有内容,已列表的形式返回数据对象

新增:

models.UserInfo.objects.create(name="hh",password=1111111)

删除:

models.UserInfo.objects.get(name='hh').delete()

修改:

user = models.UserInfo.objects.get(name='hh')
user.name = 'zz'
user.save()

外键:

publisher_id = models.ForeignKey(to="Publisher") #外键关联,使用to=关联的表名
上一篇下一篇

猜你喜欢

热点阅读