ORM框架
Object:对象-类
Relations:关系 关系数据库中的表
Mapping:映射
把类和数据库中的表关联起来
通过类和对象操作对应的数据库
不需要写sql语言了
orm也可以根据设计的类生成数据库中的表
在django中内嵌了orm框架
在model中 设计和表对应的类 模型类
先在model.py中 创建模型类
例如
class BookInfo(models.Model):
btittle = models.CharField(max_length=20)
bpub_date = models.DataField()
用模型类生成数据库的表
1) 生成秦迁移文件 直接在根目录运行
python manage.py makemigrations
迁移文件是根据模型类生成的
2)执行迁移生成表
python manage.py migrate
根据迁移文件生成数据库中的表
可以在setting文件中配置数据库
默认的是sqlite3 是一个小型数据库 经常配置在移动端
sudo apt-get install sqliteman 安装后才能打开 db.sqlite3
执行 sqlitman 就可以可视化看到我们生成的表
默认表名
应用名_模型类型 小写
可以通过shell命令 新增数据
python manage.py shell
from booktest.modeels import BookInfo
b = BookInfo()
b.btitle = "xx"
b.xx = xx
b.save()
查看数据
b2 = BookInfo.objects.get(id=1)
b2.btittle
b2.xx
b2.id
删除数据
b2.delete()
建立一对多的关系
class BookInfo(models.Model):
btittle = models.CharField(max_length=20)
bpub_date = models.DataField()
class HeroInfo(models.Model):
hname = models.CharField(max_length=20)
hgender = models.BooleanField(default=False)
hcommeent = models.CharField(max_length=128)
hbook = models.ForeignKey('BookInfo') //关系属性 建立和book的一对多关系
from booktest.modeels import BookInfo
b = BookInfo()
b.btitle = "xx"
b.xx = xx
b.save()
h = HeroInfo()
h.hname = xx
h.hbook = b // 插入外键
h.save()
b.heroinfo_set.all() //返回所以关联的hero
django orm框架
最新推荐文章于 2024-08-14 12:21:47 发布