gpt4 book ai didi

python - 如何从 Django 模型类获取 content_type?

转载 作者:行者123 更新时间:2023-12-03 08:35:11 26 4
gpt4 key购买 nike

我正在尝试获取 django models.Model 的 ContentType。不尝试从 ContentType 获取模型,这是我在文档中可以找到的全部内容。例如:

model_name = 'FooBar'
MyModel = apps.get_model('app_xyz', model_name)
MyModel
<class 'apps.app_xyz.models.FooBar'>

如何获取 MyModel 的 ContentType?我唯一能想到的就是将 model_name 字符串设置为 lower 并直接查询 ContentTypes:

ct = ContentType.objects.get(model=model_name.lower())

这看起来真的很脆弱,并且使用 lower() 有一种我不喜欢的代码味道。我查看了 FooBar 的方法、_methods 和 __methods,但无济于事。谢谢!

最佳答案

from django.contrib.auth.models import User
cc = ContentType.objects.get_for_model(User)

docs

关于python - 如何从 Django 模型类获取 content_type?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64036343/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com