我如何在django 1.8中获得所有型号

时间:2015-04-20 03:41:36

标签: python django django-models django-1.8

我在admin.py

中使用此代码
from django.db.models import get_models, get_app

for model in get_models(get_app('myapp')):
    admin.site.register(model)

但我收到get_models is deprecated

的警告

我怎么能在django 1.8

中做到这一点

1 个答案:

答案 0 :(得分:36)

这应该有效,

from django.apps import apps
apps.get_models()

get_models方法返回所有已安装模型的列表。您还可以传递三个关键字参数include_auto_createdinclude_deferredinclude_swapped

如果您想获取特定应用的模型,可以执行以下操作。

from django.apps import apps
myapp = apps.get_app_config('myapp')
myapp.models

这将返回该应用程序模型的OrderedDict实例。