从Django模型实例获取类名、应用名等元信息
在Django 项目中,有时需要通过模型实例获取其对应的类名、应用名等元信息。这些信息可以通过模型实例的_meta 字段来获取到。
示例
Django 项目下进入命令行
python manage.py shell
以blog 应用下的PostPage 模型为例
>>> from blog.models import PostPage
>>> PostPage
<class 'blog.models.PostPage'>
>>> pp = PostPage.objects.first()
# 获取模型实例对应的类
>>> pp.__class__
<class 'blog.models.PostPage'>
# 获取模型实例对应的的app名称
>>> pp._meta.app_label
'blog'
# 获取数据库中对应的表名
>>> pp._meta.db_table
'blog_postpage'
# 获取模型实例对应的类名
>>> pp._meta.object_name
'PostPage'
# 获取模型实例对应的应用和类名
>>> pp._meta.label
'blog.PostPage'
冀公网安备 13010402001886号