我想验证保存前是否存在整数order
。我是怎么做到的?
我的模特:
class Board(models.Model):
name = models.CharField(...)
curriculum = models.TextField(...)
order = models.IntegerField(...)
[更新1]
借助@DanielRoseman的提示,我尝试在form_valid
中进行。
在我的CBV中。
def form_valid(self, form):
if Board.objects.get(order = form.instance.order):
# DO SOMETHING
else:
return super(BoardCreateView, self).form_valid(form)
我的疑问是如何向用户说明它已经存在
答案 0 :(得分:2)
尝试exists()
exists()更快地检查对象是否已保存在数据库中。
来源:https://docs.djangoproject.com/en/1.11/ref/models/querysets/#django.db.models.query.QuerySet.exists
答案 1 :(得分:0)
假设你有类似的东西:
order = models.IntegerField(null=True, blank=True)
def save(self, *args, **kwargs):
if self.order:
print 'Do something'
super(Board, self).save(*args, **kwargs)