update_or_create
https://docs.djangoproject.com/zh-hans/2.2/ref/models/querysets/#update-or-create
upate_or_create
方法用来根据条件判断,是否执行更新操作还是查询操作。
基本语法:
python
models.Tests.objects.update_or_create(condition, default)
- condition:如果条件为True,则执行更新操作,否则执行创建操作。
- default:字典类型的更新或创建内容。
示例:
python
models.Tests.objects.update_or_create(pk=2, default={"name":"zhangkai"})
如果pk
为2的记录存在,就更新name
字段的内容;否则创建该条记录。
也可以这么写:
python
select_condition = {"pk": 3, "name": '张开'}
models.Testss.objects.update_or_create(**select_condition, defaults={'name': '张开腿'})
条件是pk=3 name=张开
的那条记录,有则更新,无则创建。
欢迎斧正,未完... see also:QuerySet API reference