django.core.exceptions.AppRegistryNotReady: 模型尚未加载
django.core.exceptions.AppRegistryNotReady: Models aren't loaded yet
在 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()
时也看到了递归错误。
我用 class 级别的属性解决了这个问题。
class MyModel(models.Model):
@classproperty
def special_foo(cls):
return Foo.objects.filter(name__contains='special')
遗憾的是 python 不支持开箱即用的 @classproperty
。
我使用了这里的实现
在 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()
时也看到了递归错误。
我用 class 级别的属性解决了这个问题。
class MyModel(models.Model):
@classproperty
def special_foo(cls):
return Foo.objects.filter(name__contains='special')
遗憾的是 python 不支持开箱即用的 @classproperty
。
我使用了这里的实现