orm增删改查
ORM增加表记录
1、通过实例化
book_obj = Book(id=1, title='python红宝书', price=100)
bonnk_obj.save()
2、create
create返回值为当前生成的对象记录
book_obj = Book.objects.create(title='php', price=100)
print(book_obj.price) # 100
ORM查询表记录
1、all()方法:返回一个queryset对象
2、first(), last()
调用者:queryset对象 返回值:model对象
3、filter():筛选, reverse():反转
调用者:queryset对象
返回值:queryset对象
Book.objects.filter(title='php')
4、get() :有且只有一个查询结果时才有意义
调用者:queryset对象
返回值:model对象
book_obj = Book.objects.get(title='php')
5、include(): 排除条件过滤
调用者:queryset对象
返回值:queryset对象
book_list = Book.objects.exclude(price=100)
print(book_list) # 不包含price=100的记录
6、order_by() 排序
调用者:queryset对象
返回值:queryset对象
7、count() 计数
调用者:queryset对象 返回值:int类型
book_obj_count = Book.objects.count()
8、exist() 返回值:布尔
ret = Book.objects.all().exists()
if ret:
print('ok'
9、values()
调用者queryset 返回值 queryset
ret = Book.objects.all().values('price')
ret = Book.objects.values('price', 'title')
print("vales>>", ret)
10、values_list
调用者: queryset对象 返回值:queryset对象
ret=Book.objects.all().values_list("price","title")
11、 distinct
调用者queryset 返回值 queryset
ret = Book.objects.all().filter(price=300)
print(ret)
ORM删除
delete()
调用者:queryset model
返回值:元组
Book.objects.filter(title='php').delete()
Book.objects.filter(title='php').first().delete()
ORM修改
update
Book.objects.filter(publish='av研究中心').update(publish='php出版社')