装饰器补充
django模型系统
一,数据库的链接配置
二,Django的ORM简介
三,模型的创建与激活
四,数据的增删改查
一,数据库的链接配置
django 链接mysql的配置流程:
-安装pymysql —— pip install pymysql
-创建数据库用户
-有创建数据库权限的用户
-创建数据库
create database mysite; (创建需要的数据库)
-修改配置
-修改项目文件(和settings.py文件所在的目录)下
__init__.py文件
-设置时区 TIME ZONE = ‘Asia/ShangHai’ #北京时间
二,Django的ORM简介
三,模型的创建与激活
创建模型:
-创建Student的模型,代表学生
verbose_name 人类可读的时间
总结:
1,每一个模型都是django.db.models.Model的子类
2,类变量 表示模型中的数据库字段
3,每一个字段由一个字段类的实例表示
激活模型:
1,在项目中注册app
2,运行数据库迁移命令(项目根目录下)
python mange.py makemigrations teacher(应用名:teacher,不加全部迁移)
告诉django,我们做了哪些数据库的更改
迁移
sqlmigrete 从迁移获取sql语句
--
-- Create model Student
--
CREATE TABLE `teacher_student` (
`id` integer AUTO_INCREMENT NOT NULL PRIMARY KEY,
`name` varchar(20) NOT NULL,
`age` smallint NOT NULL,
`sex` smallint NOT NULL,
`qq` varchar(20) NOT NULL,
`phone` varchar(20) NOT NULL,
`c_time` datetime(6) NOT NULL);
COMMIT;
3, 运行migrate命令,使迁移生效
python manage.py migrate
# 表名 appname 模型name.lower (表名是app下划线加上模型的小写)
四,数据的增删改查
-工具 django shell 调试工具
命令:pythone manage.py shell
创建:pip install ipython (补全功能)
增加数据方法:
1,Student.objects.create(name=‘魏国‘, age=13)
2,s1 = Student(name=‘孟杰’, age=25, qq=‘123456‘)
3,
s2 = Student()
s2.name = ‘心蓝‘
s2.age = 18
s2.save()
4, s=Student.objects.get_or_create(name=‘心蓝‘)
In [11]: s
Out[11]: (<Student: 心蓝-18>, False) ***查就是False;创建成功就是True
In [12]: s[0]
Out[12]: <Student: 心蓝-18>
In [13]: s[0].id
Out[13]: 1
查询数据
Student.objects.all() #查询所有
res = Student.objects.all()
res
print(res[1:2].query) #切片
Student.objects.get(name=‘心蓝‘) #查询
Student.objects.get(pk=1) #pk替代主键
res = Student.objects.filter(sex=1) #查询
修改数据
s.age = 16 #通过对象数据进行赋值,进行修改
s.save() #保存
Student.objects.filter(name=‘心蓝‘).update(age=18) #修改多条数据
Student.objects.filter(sex=1).delete() #删除多条数据
原文地址:https://www.cnblogs.com/wdty/p/10425412.html