0

我需要为特定应用程序的所有模型检索表名和模型的内容类型 ID。我可以使用此代码获取模型的表名,但不能获取其内容类型 ID:

from django.db.models import get_app, get_models
app = get_app("my_app_name")
for model in get_models(app, include_auto_created=True):
    print model._meta.db_table

但是我需要直接从数据库中获取这些信息。就像是:

Select id, model from django_content_type where app_label='my_app_name'

在这种情况下,我得到 id 但没有表名。在第二种情况下从哪里获得表名?

4

1 回答 1

1

获取模型内容类型的pk

from django.contrib.contenttypes.models import ContentType
ContentType.objects.get_for_model(model).pk

运行独立的 Django 脚本,引用帖子或简单地(通常有效)

DJANGO_SETTINGS_MODULE='project.settings' python script.py
于 2012-05-01T05:56:53.767 回答