Django-content—type

本文详细介绍了Django框架中的ContentTypes应用,解释了如何使用ContentType模型来追踪已安装的应用及模型,提供了示例代码说明如何获取特定模型的ContentType实例。
Django包含一个contenttype应用,它可以追踪安装在你的Django项目里的所有的应用,并提供一个高层次的,通用的接口用于与你的模型进行交互  

Contenttypes 的核心应用是ContentType 模型,存在于 django.contrib.contenttypes.models.ContentType。ContentType 的实例表示并存储你的项目当中安装的应用的信息,
并且每当新的模型安装时会自动创建新的 ContentType 实例。

Contenttypes 框架包含在django-admin startproject 创建的默认的INSTALLED_APPS 列表中,但如果你移除了它或者你手动创建 INSTALLED_APPS 列表,你可以通过添加
'django.contrib.contenttypes'到你的 INSTALLED_APPS 设置中来启用它。

每一个contenttype实例有两个字段,共同来唯一描述一个已经安装的模型
  app_label:模型所在的应用名称,这个取自模型的app_label属性,并只包括应用的python导入路径的最后部分
  model:模型的类的名称

from django.contrib.contenttypes.models import ContentType
user_type = ContentType.objects.get(app_label="auth",model="user")
print(user_type) <contenttypes:user>
user_type.model_class() <class 'django.contrib.auth.models.User'>
user_type.get(username="xxx") <user:xxx>


表结构:

表操作

增加:每次生成表的时候会自动创建

查找:

  正向:

  反向:

 

转载于:https://www.cnblogs.com/52-qq/p/8476048.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值