Django模型系统(一)
装饰器补充
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 manage.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
Django模型系统(一)相关推荐
- B django模型系统(后续1)
1.数据库的链接配置 django里mysql的连接流程 安装--pip install pymysql 创建数据库用户 有创建数据库的权限的用户 创建数据库 crm 修改配置 setings D ...
- Django模型系统的常用字段和字段参数
常用字段 AutoField:int自增列,必须填入参数 primary_key=True.当model中如果没有自增列,则自动会创建一个列名为id的列. IntegerField:一个整数类型,范围 ...
- Django模型系统之常用查询语法及进阶
一般操作 常用操作 <1> all(): 查询所有结果<2> filter(**kwargs): 它包含了与所给筛选条件相匹配的对象<3> get(**kwargs ...
- Django模型系统——ORM中跨表、聚合、分组、F、Q
核心知识点: 1.明白表之间的关系 2.根据关联字段确定正反向,选择一种方式 在Django的ORM种,查询既可以通过查询的方向分为正向查询和反向查询,也可以通过不同的对象分为对象查询和Queryse ...
- 关于django模型语法里面的一些坑。系统报错:Unknown command: 'validate' Type 'manage.py help' for usage.
在学习django模型的时候,博主就遇到过一些坑,这是博主遇到的一个小例子,希望能帮到遇到同样问题的你们. 你是否在学习django时,当你创建了一个模型后,当你正要检测模型的可用性时,使用了语句:p ...
- 第四章:Django 模型 —— 设计系统表
1. Django框架提供了完善的模型(Model )层来创建和存储数据,每一个模型对应数据库中的唯一的一张表. 2. Django 模型基础知识: .每一本模型是一个Python类,继承了djang ...
- 4Python全栈之路系列之Django模型
Python全栈之路系列之Django模型 MTV开发模式 把数据存取逻辑.业务逻辑和表现逻辑组合在一起的概念有时被称为软件架构的Model-View-Controller(MVC)模式.在这个模式中 ...
- Web开发-Django模型层
Django模型层 简述 Django框架处理业务的逻辑一般如下(省略图,源于网络,侵删) 可以看到,Django自带了一套ORM机制,这也是Django框架的核心-"全面",将一 ...
- 自动化测试平台化[v1.0.0][Django模型]
设计系统表 Django提供了完善的模型层,来创建和存取数据,它包含你所储存数据的必要字段和行为,每个模型对应数据库中唯一的一张表,模型避免了我们直接对数据库的操作 每个模型是一个Python类,集成 ...
最新文章
- 库克说AI也能创造很多就业岗位,苹果加码教育布局
- sql2008表结构查看_【赵强老师】Oracle数据库的存储结构
- java之InetAddress类和InetSocketAddress的使用
- 5、mybatis中的映射器
- 可以结束一个循环的关键字是python_第33 p,for遍历,循环取值最方便
- 不懂就问,Spring 是如何判定原型循环依赖和构造方法循环依赖的?
- LeetCode 228. Summary Ranges
- dw显示云服务器的数据库,dw如何读取服务器数据库
- 理解perl的编码转换——utf8以及乱码
- 2058. 笨拙的手指
- 7-4 是不是顺子 (10 分)
- java 方法(函数)详解
- PMP培训内容有哪些?都要仔细看!
- STM8L151G6U6 之实现低功耗RTC唤醒
- Android源码层修改默认时区
- Qt中绘制五子棋棋盘
- android主线程报ANR的问题!
- Linux-tar打包与解压命令
- 【冰糖R语言】Shiny简单笔记
- 数仓建设(离线和实时)