在Django 1.7中,此代码导致django.setup()
:
class MyModel(models.Model):
special_foo=Foo.objects.filter(name__contains='special')
就我而言,我得到了这个:
django.core.exceptions.AppRegistryNotReady: Models aren't loaded yet.
但我在django.setup()
尝试再次运行django.setup()
时看到了递归错误。
答案 0 :(得分:0)
我用类级别的属性解决了这个问题。
class MyModel(models.Model):
@classproperty
def special_foo(cls):
return Foo.objects.filter(name__contains='special')
不幸的是,python不支持@classproperty
开箱即用。