Django的ContentType框架django_conent_type

Django包含了一个conenttype应用程序,记录了Django项目中安装的所有模型,为当前项目所有基于Django驱动的model提供了更高层次的抽象接口。

一、概述

ContentTypes应用程序的核心是 django.contrib.contenttypes.models.ContentType:

@python_2_unicode_compatible
class ContentType(models.Model):
    app_label = models.CharField(max_length=100)
    model = models.CharField(_(‘python model class name‘), max_length=100)
    objects = ContentTypeManager()

    class Meta:
        verbose_name = _(‘content type‘)
        verbose_name_plural = _(‘content types‘)
        db_table = ‘django_content_type‘
        unique_together = ((‘app_label‘, ‘model‘),)

    def __str__(self):
        return self.name

当我们不创建任何model的情况下就迁移数据库,就会发现在数据表中有名为django_content_type的表

1|admin|logentry
2|auth|group
3|auth|user
4|auth|permission
5|contenttypes|contenttype
6|sessions|session

二、安装ContentTypes框架

三、ContentType模型

四、ContentType方法

五、

原文地址:https://www.cnblogs.com/weihengblog/p/9271319.html

时间: 2024-10-11 01:18:32

Django的ContentType框架django_conent_type的相关文章

DRF (Django REST framework) 框架介绍

Web应用模式 在开发Web应用中,有两种应用模式: 前后端不分离 前后端分离 1 前后端不分离 在前后端不分离的应用模式中,前端页面看到的效果都是由后端控制,由后端渲染页面或重定向,也就是后端需要控制前端的展示,前端与后端的耦合度很高. 这种应用模式比较适合纯网页应用,但是当后端对接App时,App可能并不需要后端返回一个HTML网页,而仅仅是数据本身,所以后端原本返回网页的接口不再适用于前端App应用,为了对接App后端还需再开发一套接口. 2 前后端分离 在前后端分离的应用模式中,后端仅返

Django的ContentType应用

ContentType实例提供的接口 1.ContentType.model_class() : 获取当前ContentType类型所代表的模型类 2.ContentType.get_object_for_this_type() : 使用当前ContentType类型所代表的模型类做一次get查询 ContentType管理器(manager)提供的接口 1.ContentType.objects.get_for_id() : 通过id寻找ContentType类型,这个跟传统的get方法的区别

测试开发之Django——No4.Django中前端框架的配置与添加

我们在开发一个web项目的时候,虽然我们不是专业开发,但是我们也想要做出来一个美美的前端页面. 这种时候,百度上铺天盖地的前端框架就是我们的最好选择了. 当然,在网上直接下载的框架,我们是不能直接用的,所以本篇介绍一下我们怎么样来修改这个模板 首先,我们先下载一个免费的模板. 我们可以看到他的目录结构,用浏览器打开index.html文件之后可以看到模板的样式. 这样我们就可以想要哪个地方,复制哪个地方,到我们的代码里面了.给我们节省了很多编写前端的时间. 那么我们来看一下这个模板我们要怎么去做

Django之ContentType组件

一.需求 给商品创建优惠券: 看看下面表结构: class Food(models.Model): """ id name 1 面条 """ name = models.CharField(max_length=32) def __str__(self): return self.name class Fruit(models.Model): """ id name 1 苹果 """ n

真正搞明白Python中Django和Flask框架的区别

在谈Python中Django框架和Flask框架的区别之前,我们需要先探讨如下几个问题. 一.为什么要使用框架? 为了更好地阐述这个问题,我们把开发一个应用的过程进行类比,往往开发一个应用(web应用.系统应用)跟建造房子的过程一样,需要先打地基,搭好骨架,然后一块砖一块砖叠上去. 而开发一个应用呢?同样也需要一个好的架构设计,数据库建模,然后一个模块一个模块使用代码实现. 如果开发一个软件应用不使用框架,和我们建房子时,每一块砖.每一根钢筋都需要自己生产出来本质上是一样的. 显而易见,如果在

web前端Vue+Django rest framework 框架 生鲜电商项目实战视频教程 学习

web前端Vue+Django rest framework 框架 生鲜电商项目实战视频教程 学习 1.drf前期准备 1.django-rest-framework官方文档 https://www.django-rest-framework.org/ #直接百度找到的djangorestframework的官网是打不开的 2.安装依赖包 如图所示,django restframework的依赖模块,除了coreapi和django-guardian,已经在前面安装过了. 打开终端,执行安装命令

Django REST framework框架详解

Django REST framework 简介 在序列化与反序列化时,虽然操作的数据不尽相同,但是执行的过程却是相似的,也就是说这部分代码是可以复用简化编写的. 在开发REST API的视图中,虽然每个视图具体操作的数据不同,但增.删.改.查的实现流程基本套路化,所以这部分代码也是可以复用简化编写的: 增:校验请求数据 -> 执行反序列化过程 -> 保存数据库 -> 将保存的对象序列化并返回 删:判断要删除的数据是否存在 -> 执行数据库删除 改:判断要修改的数据是否存在 -&g

Django 使用Contenttype组件创建多关联数据库表

from django.db import models '''contenttype使用意义:如果使用contenttypes就不需要再使用多个Foreignkey, 因为在django_content_type表已经存储了app名和model名, 所以我们只需要将我们创建的模型与django_content_type表关联起来, 然后再存储一个实例 id 即可准确定位到某个app中某个模型的具体实例 ''' '''使用Django的Contenttype字段.''' # 导入必需模块 fro

Python自动化运维之26、Django系列-Web框架本质

一.Web框架本质 众所周知,对于所有的Web应用,本质上其实就是一个socket服务端,用户的浏览器其实就是一个socket客户端. #!/usr/bin/env python #coding:utf-8 import socket def handle_request(client): buf = client.recv(1024) client.send("HTTP/1.1 200 OK\r\n\r\n") client.send("Hello, Seven"