将所有模型添加到管理站点 django 1.9

Add all models to admin site django 1.9

我需要将我的模型添加到我在 django 1.9 上的管理站点, 我之前使用过这段代码:

for model in get_model(get_app('campaign')):
     admin.site.register(model)

但是,django 1.9 版本不支持它。有没有新的方法可以做到这一点?

您可以使用应用配置的get_models()方法。

from django.contrib import admin
from django.apps import apps

myapp = apps.get_app_config('myapp')
for model in myapp.get_models():
    admin.site.register(model)

在现代版本的 Django 中(我不确定它是否适用于 Django < 1.10),您可以将其简化为:

myapp = apps.get_app_config('myapp')
admin.site.register(myapp.get_models())