覆盖模型的清洁方法问题

gla*_*xly 1 django django-models

我想在其clean方法中计算模型的所有实例,如下所示:

def SampleModel(models.Model):
   ...

   def clean(self):
       SampleModel.objects.all().count()
Run Code Online (Sandbox Code Playgroud)

但是,尚未定义模型,并且无法通过自身访问对象.有没有办法在不使用原始sql的情况下执行此操作?

Bra*_*don 5

您可以使用以下方法在Model上访问self中的对象:

self.__class__.objects.count()
Run Code Online (Sandbox Code Playgroud)