-
数据库迁移
python3 manage.py makemigrations --->只是对变化做一个记录,记录文件在app的migrations python3 manage.py migrate ---->把更改提交到数据库 python3 manage.py showmigrations ---->查看那个没有提交到数据库 没迁移显示'[ ]' 迁移的显示'[X]'
-
查看操作的sql语句
book = Book.objects.all() print(book.query)
-
查询API
<1> all(): 查询所有结果 <2> filter(**kwargs): 它包含了与所给筛选条件相匹配的对象 <3> get(**kwargs): 返回与所给筛选条件相匹配的对象,返回结果有且只有一个,如果符合筛选条件的对象超过一个或者没有都会抛出错误。 <4> exclude(**kwargs): 它包含了与所给筛选条件不匹配的对象 <5> order_by(*field): 对查询结果排序('-id') <6> reverse(): 对查询结果反向排序 <8> count(): 返回数据库中匹配查询(QuerySet)的对象数量。 <9> first(): 返回第一条记录 <10> last(): 返回最后一条记录 <11> exists(): 如果QuerySet包含数据,就返回True,否则返回False <12> values(*field): 返回一个ValueQuerySet——一个特殊的QuerySet,运行后得到的并不是一系列 model的实例化对象,而是一个可迭代的字典序列 <13> values_list(*field): 它与values()非常相似,它返回的是一个元组序列,values返回的是一个字典序列 <14> distinct(): 从返回结果中剔除重复纪录
-
基于双下划线的模糊查询
Book.objects.filter(price__in=[100,200,300])---in不in这个列表 Book.objects.filter(price__gt=100)-------------查询大于100 Book.objects.filter(price__lt=100)-------------查询小于100 Book.objects.filter(price__gte=100)------------大于等于100 Book.objects.filter(price__lte=100)------------小于等于100 Book.objects.filter(price__range=[100,200])----100(包含)到200(包含)之间 Book.objects.filter(title__contains="p")-------包含'p'的 = sql的like %p% Book.objects.filter(title__icontains="P")------包含'p'或'P'的, 不区分大小写 Book.objects.filter(title__startswith="py")----'py'开头的 Book.objects.filter(pub_date__year=2012)-------2012年出版的
单表操作详细
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...