欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Django获取应用下的所有models的例子

程序员文章站 2023-10-30 18:33:16
django获取应用下的所有models from django.apps import apps apps.get_models() # 获取所有的mo...

django获取应用下的所有models

from django.apps import apps
 
apps.get_models() # 获取所有的models,包含django自带的
 
apps.get_app_config('blog') # 获取blog的配置
# <blogconfig: blog>
 
apps.get_app_config('blog').models
# ordereddict([('tag', <class 'app_blog.blog.models.tag'>), ('category', <class 'app_blog.blog.models.category'>)])
 
 
apps.get_app_config('blog').get_models() # 获取所有的models
# <generator object appconfig.get_models at 0x00000263bc3a2c78>
 
list(apps.get_app_config('blog').get_models()) # 遍历所有的models
# [<class 'app_blog.blog.models.tag'>, <class 'app_blog.blog.models.category'>, ...]
 
apps.get_app_config('blog').get_model('article')._meta.verbose_name # 获取models的名称
# '文章'

admin下实现遍历注册model

all_models = apps.get_app_config('blog').get_models()
for model in all_models:
 try:
  admin.site.register(model)
 except:
  pass

以上这篇django获取应用下的所有models的例子就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。