Python 如何验证Django 1.11.x中数据库中是否存在记录的最佳方法?
在保存之前,我要验证是否存在一个整数Python 如何验证Django 1.11.x中数据库中是否存在记录的最佳方法?,python,django,Python,Django,在保存之前,我要验证是否存在一个整数顺序。我是怎么做到的 我的模型: class Board(models.Model): name = models.CharField(...) curriculum = models.TextField(...) order = models.IntegerField(...) [更新1] 有了@DanielRoseman的提示,我试着用的形式做它 在我的CBV里 def form_valid(self, form): if
顺序
。我是怎么做到的
我的模型:
class Board(models.Model):
name = models.CharField(...)
curriculum = models.TextField(...)
order = models.IntegerField(...)
[更新1]
有了@DanielRoseman的提示,我试着用的形式做它
在我的CBV里
def form_valid(self, form):
if Board.objects.get(order = form.instance.order):
# DO SOMETHING
else:
return super(BoardCreateView, self).form_valid(form)
我的疑问是如何返回给用户声明它已经存在尝试exists()
exists()检查对象是否已保存在数据库中的速度更快
资料来源:假设您有以下情况:
order = models.IntegerField(null=True, blank=True)
def save(self, *args, **kwargs):
if self.order:
print 'Do something'
super(Board, self).save(*args, **kwargs)
您面临的问题到底是什么?您到底想做什么?我如何验证是否存在以及是否存在返回给存在的用户。您如何验证是否存在?这个保存方法是什么?模型还是形式?无论如何,你为什么不在验证中验证它呢?我更新了问题@DanielRoseman,我希望能更好地解释它。正如我所说,这是你在验证中应该做的事情-例如在表单的clean
方法中。@DanielRoseman说最好的方法是clean
方法。我尝试了你的解决方案,但没有成功。谢谢。