参考Django官方文档

ContentTypeManager

classContentTypeManager

ContentType 还有一个自定义管理器, ContentTypeManager,它增加了以下方法:

clear_cache()

清除 ContentType 内部的缓存,用来跟踪已经创建了 ContentType 实例的模型。你可能永远都不需要自己调用这个方法,Django 会在需要的时候自动调用它。

get_for_id(id)

通过 ID 查找一个 ContentType。由于该方法与 get_for_model() 使用了相同的共享缓存,所以最好使用该方法,而不是通常的 ContentType.objects.get(pk=id)

get_for_model(model, for_concrete_model=True)

取一个模型类或一个模型的实例,并返回代表该模型的 ContentType 实例。for_concrete_model=False 允许获取代理模型的 ContentType 实例。

get_for_models(*models, for_concrete_models=True)

取一个数量不等的模型类,并返回一个将模型类映射到代表它们的 ContentType 实例的字典。for_concrete_models=False 允许获取代理模型的 ContentType 实例。

get_by_natural_key(app_label, model)

返回由给定的应用程序标签和模型名称唯一标识的 ContentType 实例。本方法的主要目的是允许 ContentType 对象在反序列化过程中通过 自然键 被引用。

当你知道需要使用一个 ContentType,但又不想麻烦地获取模型的元数据来执行手动查找时,这个 get_for_model() 方法特别有用:

>>> from django.contrib.auth.models import User
>>> ContentType.objects.get_for_model(User)
<ContentType: user>

最新文章

  1. js闭包 和 prototype
  2. 001.mysql安装(lnmp)
  3. 使用n2n在没有公网IP条件下访问树莓派
  4. Table的行列合并
  5. 在 ASP.NET 中创建数据访问和业务逻辑层(转)
  6. error C2664
  7. Runtime 交换方法
  8. Eclipse+SVN搭建开发环境
  9. KVC , KVO , KVB
  10. awk 多分隔符
  11. python爬虫实战(一)--------中国作物种质信息网
  12. 禁止右键,禁止选中,禁止网页复制的Js代码
  13. [bzoj1301] [LLH邀请赛]参观路线
  14. jquery easyui datagrid 排序列
  15. BurpSuite 代理设置的小技巧
  16. python入门学习:8.类
  17. fuser - 查看文件/网络端口等被什么进程占用
  18. codecs and formats of digital media
  19. random函数的使用
  20. jQuery id模糊 选择器 批量处理

热门文章

  1. JZOJ 3527.迷宫花坛(garden)
  2. 简单添加table线条
  3. 如何将 Autofac 整合进 Net6.0 Core MVC 项目中
  4. Postgresql模板数据库之template1 和 template0
  5. Epicor 助力F1车队Scuderia AlphaTauri 提升车队运营效率和性能
  6. Java语言输出菱形图型
  7. LeetCode-393 UTF-8编码验证
  8. 09 安装虚拟机:Ubuntu Server 20.04
  9. No.2.2
  10. 野火FreeRTOS第九章(任务延时列表)实验意外解决办法