Python3之Django Web框架模型篇(一)
程序员文章站
2022-07-03 23:19:44
...
ORM:对象关系映射
模型类与数据表的映射关系:
类名《========》表名即(应用的名字_类名)
属性《========》字段
对象《========》记录(一条完整的数据信息)
数据库connector配置(两种方式)
- pip install mysqlclient
- 在models所在包中的init文件中写入:
Django默认导入MySQLdb作为与数据库的接口,想使用pymysql作为接口必须填入:
import pymysql
pymysql.install_as_MySQLdb()
设计表及表与表的关系
在models中定义好类,属性等
建好数据库,在settings中配置:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'django_db',
'USER': 'root',
'PASSWORD': 'root',
'HOST': '',
'PORT': '3306'
}
}
做数据库迁移:
python manage.py makemigrations
python manage.py migrate
数据库生成模型类:
python manage.py inspectdb > 应用名/models.py
数据创建方式:
创建数据
# 第一种方式id可以不需要处理,id会被自动处理,前端的序号可以使用forloop.counter,推荐使用!!!
mdl_obj = models.Book.objects.create(bname="三毛选集", bauthor='三毛', bpub_date='2017-11-10', bprice='10');
mdl_obj产生的对象可以使用对象的方法获取属性值;
# 第二种方式
# obj = models.Book(username='', password="")
# obj.save()
# 第三种方式
# dic = {'username': '', 'password': ''}
# models.Book.objects.create(**dic)
更新数据(两种方式)
#第一种(推荐):
#models.Book.objects.all().update(password=)
#models.Book.objects.filter(bid=).update(password=)
#第二种(虽然更改某个数据,ORM会更新所有数据,效率低):
#mdl_obj = models.Book(username='',password='')
#mdl_obj.username = ''
#mdl_obj.save()
上一篇: centos 7修改默认运行级别
下一篇: OpenSUSE修改默认运行级别