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

KAY*_*SIZ 1 django python-3.x django-1.9

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

for model in get_model(get_app('campaign')):
     admin.site.register(model)
Run Code Online (Sandbox Code Playgroud)

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

Ala*_*air 5

您可以使用get_models()app config 的方法.

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)
Run Code Online (Sandbox Code Playgroud)

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

myapp = apps.get_app_config('myapp')
admin.site.register(myapp.get_models())
Run Code Online (Sandbox Code Playgroud)