我想知道在 Django 中创建(如果它不存在)或删除(如果它存在)一个对象的最佳方法是什么。
我知道我可以做这样的事情:
if Like.objects.filter(user=request.user, post=post).exists():
Like.objects.filter(user=request.user, post=post).delete()
else:
Like.objects.create(user=request.user, post=post)
有没有更好的方法,例如
get_or_create
Django 提供的方法?
最佳答案
如果它是单个对象,请执行以下操作:
try:
Like.objects.get(user=request.user, post=post).delete()
except Like.DoesNotExist
Like.objects.create(...)
关于Django - 创建或删除对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51206549/