![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Django
爱码士的博客
萌新出道多多关照
展开
-
Django QuerySet查询(进阶查询)
F:F表达式常用来执行数据层面的计算,从而避免出现竞争状态。比如每篇文章的访问量假设存在post.pv字段 from django.db.models import F post = Post.objects.get(id=1) post.pv = F('pv') + 1 post.save() Q:Q表达式是用来解决OR查询或者AND查询的 from Django.db.models import Q post = Post.object.get(id=1) Post.objects.Filte原创 2020-07-21 23:47:14 · 583 阅读 · 1 评论 -
Django QuerySet常用的字段查询
例如: Post.objects.filter(content__contains='查询条件') contains就属于字段查询。 contains:包含,用来进行相似查询 icontains:同contains,只是忽略大小写 exact:精确匹配 iexact:同exact,忽略大小写 in:指定某个集合,比如Post.objects.filter(id__in=[1,2,3]),相当于SELECT * FROM blog_post WHERE IN (1,2,3) gt:大于某值原创 2020-06-29 17:41:47 · 962 阅读 · 0 评论 -
Django QuerySet接口(进阶篇)
除了常用接口外,还有一些提高性能的接口,在优化Django项目时,尤其要考虑这几种接口的用法 defer接口。把不需要展示的字段做延迟加载,比如说需要获取到文章中除正文外的其他字段,这样拿到的记录中就不会包含content部分。但是如果我们需要用到这个字段是,在使用时回去加载: posts = Post.objects.all().defer('content') for post in posts: # 此时会执行数据查询 print(post.content) # 此时获取数据查询,获原创 2020-06-29 17:18:00 · 194 阅读 · 0 评论 -
Django QuerySet的接口
1、支持链式调用的接口 即返回QuerySet的接口 all接口。相当于select * from table_name ,用于查询所有数据 filter接口。根据条件过滤数据,常用条件基本上是字段等于、不等于、大于、小于、当然还有其他的,比如能改成产生LIKE查询的:Model.objects.filert(content__contains="条件") exclude接口。同filter,只是相反的逻辑 reverse接口。把QuerySet结果倒叙排列 distinct接口。用来进行去重查原创 2020-06-28 18:31:10 · 228 阅读 · 0 评论 -
Django QuerySet的概念及使用
一、QuerySet的概念 这一节中,学习如何通过Django的Model操作数据库。 我们同数据库的所有查询以及更新交互都是通过QuerySet来完成的 Django算是标准的MVC架构,虽然因为他的模板和View的概念,被大家戏称“MTV”,但是道理是一样的 Model作为MVC模式的基础层,也被称为数据层,负责为整个系统提供数据。因此,我们需要先理解一下他是如何提供数据的 Django通过给Model增加一个objects属性来提供数据操作的接口。比如想要查询所有文章的数据,Post.obj原创 2020-06-28 11:55:52 · 616 阅读 · 0 评论 -
Django 常用字段类型以及参数
一、常用字段类型 看完上一节的基本概念之后,我们接下来了解具体实现。 来看一下上一节的一行代码 name = models.CharField(max_length=50, verbose_name="名称") 你可能要问CharField是什么鬼,它就是这个字段在数据库中的你设置的类型 1.数值型 AutoField 类型为int(11)自增主键 Django Model默认提供,可以被重写,完整定义是 id = models.AutoField(primary_key=True) ..原创 2020-06-25 00:25:12 · 1942 阅读 · 0 评论 -
Django ORM的基本概念
ORM(object Relational Mapping) 对象映射关系 就是我们的定义的对象(类)映射到对应的数据库的表上。所以ORM就是代码(软件)层面对于数据库表和关系的一种抽象。 就是定义了对应的字段原创 2020-06-24 22:32:25 · 138 阅读 · 0 评论 -
Django创建虚拟环境
创建虚拟环境 virtualenv 加自定义环境名原创 2020-06-23 02:24:28 · 126 阅读 · 0 评论 -
Django的Testcase
def setUp(self): # 用来初始化环境,包括创建初始化的数据 def test_xxx(self): # 方法后面的XXXX可以是任意。以test开头的方法,会被认为是需要测试的方法 def tearDown(self): # 跟setUp一样用来清理测试环境和测试数据 ...原创 2020-06-22 01:20:06 · 582 阅读 · 0 评论 -
Django的HttpResponseRedirect
当一个逻辑处理完成后,不需要向客户端呈现数据,而是转回到其它页面,如添加成功、修改成功、删除成功后显示数据列表 而转到这个视图,此时就需要模拟一个用户请求的效果,从一个视图转到另外一个视图,就称为重定向。 ...原创 2020-06-20 23:52:09 · 1680 阅读 · 0 评论