gpt4 book ai didi

python - Django 对象存在

转载 作者:太空宇宙 更新时间:2023-11-03 13:51:07 24 4
gpt4 key购买 nike

我想检查数据库中是否存在该对象,如果不存在,则将其添加到数据库中。我试过了:

if not MyModel.objects().get(surname='foo'): 
management.call_command('loaddata', 'Bootstrap_data', verbosity=0)#adds this object from fixtures

但是我从 db(sqlite3) 得到一个查询错误。这种对象校验方式如何解决?

错误是:

DoesNotExist at /
MyModel matching query does not exist.

因为数据库中没有这个姓氏的对象。

最佳答案

通常您会使用 get_or_create .

model_instance = MyModel.objects.get_or_create(surname='foo')

你真的不应该为这样的事情使用 management.call_command

就是说,如果我误解了你有充分的理由,试试这个:

try:
MyModel.objects.get(surname='foo')
except MyModel.DoesNotExist:
management.call_command(....)

if not MyModel.objects.filter(surname='foo').exists():
management.call_command(....)

关于python - Django 对象存在,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8761981/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com