一 单表操作
create_time = models.DateField() # 不指定auto_now或auto_now_add时,需要自己传参数 关键性的参数: 1.auto_now:每次操作数据 都会自动刷新当前操作的时间 2.auto_now_add:在创建数据的时候 会自动将创建时间记录下来 后续的修改不会影响该字段
二 测试脚本文件使用
django中 你可以写一个单独测试某一个py文件的测试脚本 不需要再频繁的走web请求
1.脚本测试文件必须的代码
import os import sys if __name__ == "__main__": # django在启动的时候 就会往全局的大字典中设置一个键值对 值是暴露给用户的配置文件的路径字符串 os.environ.setdefault("DJANGO_SETTINGS_MODULE", "day54.settings") import django django.setup() # 下面为测试代码:比如测试应用app01和它models.py文件中的Book类
from app01 import models models.Book.objects.all()
三 模型层的单表操作
1.返回QuerySet对象的方法有 all() filter() exclude() order_by() reverse() distinct() 2.特殊的QuerySet values() 返回一个可迭代的字典序列 values_list() 返回一个可迭代的元祖序列 3.返回具体对象的 get() first() last() 4.返回布尔值的方法有: exists() 5.返回数字的方法有 count()
具体操作(看连接和补充)
https://www.cnblogs.com/Dominic-Ji/p/9203990.html
1. order_by(*field): 对查询结果排序(‘-id‘) / (‘price‘) print(models.Book.objects.order_by(‘price‘)) # 默认是升序 print(models.Book.objects.order_by(‘-price‘)) # 加负号就是降序 2. reverse(): 对查询结果反向排序 >> > 前面要先有排序才能反向 # print(models.Book.objects.order_by(‘price‘).reverse()) 3. distinct(): 从返回结果中剔除重复纪录 """ 去重的前提是 一定要是查询出来的结果有完全重复的数据 才能去重 """ # print(models.Book.objects.filter(title=‘三国演义‘).distinct())
原文地址:https://www.cnblogs.com/tfzz/p/11546386.html
时间: 2024-11-12 11:07:50