随笔分类 -  Django框架快速上手

摘要:1一对一模型类Models的创建: #作者class Author(models.Model): name = models.CharField('姓名',max_length=11,default='') #作者的妻子 class Wife(models.Model): name = models 阅读全文
posted @ 2021-12-01 11:12 linuxTang 阅读(116) 评论(0) 推荐(0)
摘要:admin配置步骤: 创建管理账号:python manage.py createsuperuser 注册自定义模型类: 1在应用app中的admin.py中导入需要在admin后台管理的模型类例如:from .models import Book2在应用app中的admin.py中调用admin. 阅读全文
posted @ 2021-12-01 08:55 linuxTang 阅读(92) 评论(0) 推荐(0)
摘要:原生数据库操作方法一: 查询:MyModel.objects.raw() 语法:MyModel.objects.raw(SQL语句,拼接参数) 返回值:RawQuerySet集合对象【只支持基础操作,比如循环】 Django官方一般不建议直接使用SQL做查询操作,容易被注入SQL,例如下面这个案例: 阅读全文
posted @ 2021-11-30 11:47 linuxTang 阅读(171) 评论(0) 推荐(0)
摘要:聚合函数分为整表聚合和分组聚合,主要用于统计(求和Sum,平均值Avg,计数Count,最大值Max,最小值Min) 使用聚合函数的前提需要导入:from django.db.models import * 语法:MyModel.objects.aggregate(结果变量名=聚合函数('列')) 阅读全文
posted @ 2021-11-30 10:57 linuxTang 阅读(800) 评论(0) 推荐(0)
摘要:F对象和Q对象 F对象作用:标记字段,无需获取数据库字段到本地就能对数据库中的指定字段进行操作 例如点赞高并发场景使用F对象更新点赞值即可实现如下这条sql语句的效果: update biao set money = money + 1 where id = xxxx # #批量更新零售价Book. 阅读全文
posted @ 2021-11-29 22:15 linuxTang 阅读(95) 评论(0) 推荐(0)
摘要:删除分为物理删除和逻辑删除,生产中使用逻辑删除的场景比较多 1物理删除: #物理删除 (venv) D:\PycharmProjects\mysite3>python manage.py shell >>> from bookstore.models import Book >>> b1 = Boo 阅读全文
posted @ 2021-11-29 17:41 linuxTang 阅读(327) 评论(0) 推荐(0)
摘要:Django数据更新操作记住一下顺口溜: 对于修改一条数据,要一查二改三保存。对于批量数据,只要拿到一组queryset然后直接update即可, 思路: 前端传过来一个id,后端根据这个id获取数据并把数据返给前端,前端在本地更新需要修改的数据后回传给后端,后端接到值后更新数据库 示例: 1pc后 阅读全文
posted @ 2021-11-29 11:47 linuxTang 阅读(374) 评论(0) 推荐(0)
摘要:1增: 概念: 管理器对象:每个继承自models.Model的模型类都会有一个ojects对象,这个对象就叫管理器对象,数据库的增删改查均可通过管理对象进行操作! 一创建数据: 给表添加数据方法1: (venv) D:\PycharmProjects\mysite3>python manage.p 阅读全文
posted @ 2021-11-27 18:56 linuxTang 阅读(284) 评论(0) 推荐(0)
摘要:一,熟悉DjangoORM模型层: django使用mysql数据库首先需要安装pymysql驱动和mysqlclient,然后还需在django工程同名的子目录init.py文件中添加如下语句,即:让pymysql以MYSQLdb的运行模式和django的ORM对接运行 from pymysql 阅读全文
posted @ 2021-11-27 14:28 linuxTang 阅读(100) 评论(0) 推荐(0)
摘要:Django应用的创建和分布式路由 分布式路由: 主路由只负责请求分发,具体路由由各自app下自行创建的url.py负责,即:主负责找规律,子负责绑定视图函数,例如匹配127.0.0.1:8000/music/index 主路由:path('music/', include('music,urls' 阅读全文
posted @ 2021-11-26 18:51 linuxTang 阅读(78) 评论(0) 推荐(0)
摘要:url反向解析: url可能出现的位置: 1< a href='url'>< / a> 2< form action = 'url' mrthod='post' > 3HttpResponseRedirect('url') 4前端在使用相对url地址时记得一定要在地址前面加上斜杠,否则找不到路由会报 阅读全文
posted @ 2021-11-26 16:59 linuxTang 阅读(118) 评论(0) 推荐(0)
摘要:1视图层与模板层之间的交互y以及模板过滤器的使用: 过滤器说明 lower 将字符串转换成小写 upper 将字符串转换成大写 safe 默认不对变量内的字符串进行html转义 add:"n" 将value值增加n truncatechars:'n' 如果字符串字符多于指定的字符数量,那么会被截断。 阅读全文
posted @ 2021-11-26 11:12 linuxTang 阅读(44) 评论(0) 推荐(0)
摘要:当用户浏览器请求的时候,django会首先访问settings.py文件里的主路由“ROOT_URLCONF”配置列表中的urlpatterns变量,这个变量是一个数组,数组里面有很多path函数,在这个path函数中我们会配置各种各样的路由以及和路由绑定的视图函数名称 练习1: 访问127.0.0 阅读全文
posted @ 2021-11-24 14:28 linuxTang 阅读(194) 评论(0) 推荐(0)
摘要:#Ubuntu安装python和django: 第一步:安装依赖环境: sudo apt-get install -y make build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev wget 阅读全文
posted @ 2021-11-24 09:49 linuxTang 阅读(53) 评论(0) 推荐(0)