I am using this code in my admin.py
from django.db.models import get_models, get_app
for model in get_models(get_app('myapp')):
admin.site.register(model)
But i get warning that get_models is deprecated
How can i do that in django 1.8
This should work,
from django.apps import apps
apps.get_models()
The get_models
method returns a list of all installed models. You can also pass three keyword arguments include_auto_created
, include_deferred
and include_swapped
.
If you want to get the models for a specific app, you can do something like this.
from django.apps import apps
myapp = apps.get_app_config('myapp')
myapp.models
This will return an OrderedDict instance of the models for that app.
来源:https://stackoverflow.com/questions/29738976/how-can-i-get-all-models-in-django-1-8