Django之ContentTypes】的更多相关文章

这是一个django内置的表结构,为的就是通过两个字段让表和N张表创建FK关系. 比如说有两种不同课程,这两种课程都有价格周期和策略.如果最低级的则是给每个表创建一个价格策略.如果非要在同一个表内使用价格策略, 那么如上图那样,course_id跟专题课程做外键关联,学位课程为空,如果跟学位课程做关联,那么专题课程的ID又为空,如果很多门课程,那么 就需要在价格策略中写入很多的外键字段. 为了解决这种问题,django引入了一种方式就是django的contenttypes. 首先有下面的表结构…
当一张表和多个表ForeignKey关联,并且多个FK中只能选择其中一个或其中n个时,可以利用contenttypes,只需定义三个字段就搞定! contenttypes 是Django内置的一个应用,可以追踪项目中所有app和model的对应关系,并记录在ContentType表中. 每当我们创建了新的model并执行数据库迁移后,ContentType表中就会自动新增一条记录.比如我在应用app的models.py中创建表class Electrics(models.Model): pass…
Django contenttypes 应用 简介 contenttypes 是Django内置的一个应用,可以追踪项目中所有app和model的对应关系,并记录在ContentType表中. 每当我们创建了新的model并执行数据库迁移后,ContentType表中就会自动新增一条记录.比如我在应用app01的models.py中创建表class Electrics(models.Model): pass.从数据库查看ContentType表,显示如下: 那么这个表有什么作用呢?这里提供一个场…
一.django的contenttypes contenttypes 是Django内置的一个应用 , 可以追踪项目中所有app 和 model 的对应关系, 并记录djang_content_type 表中. 每当我们创建了新的model 并执行数据库迁移后 , django_content_type 表中就会自动新增一条记录 , 比如我在应用pp01的models.py中创建表class Electrics(models.Model): pass.从数据库查看django_content_t…
ContentTypes是什么? ContentTypes是Django内置的一个应用,可以追踪项目中所有app和model的对应关系,并记录在ContentType表中. 每当我们创建了新的model并执行表数据库迁移后,ContentType表中就会自动新增一条记录.如下表: 什么时候用? 当一张表跟多张表有ForeignKey关系时,可以避免重复写ForeignKey字段,而使用ContentTypes. 表结构 通过使用contenttypes 应用中提供的特殊字段GenericFore…
当一张表作为多个表的FK(主键),并且只能选择其中一个或者几个时,就可以使用content_type表:例如下图的数据关系,因此就可以使用content_type表来将表与表中的对象进行关联,从而做到不增加列字段的情况下增加FK关系. 在使用content_type表时,需要在FK表中增加content_type作为FK字段,并增加GenericForeignKey便于价格策略表记录的建立以及对应的课程的查找. from django.contrib.contenttypes.models im…
目录 一. 介绍 二. 应用场景 1. 表结构设计的演变 2. GenericForeignKey和GenericRelation 3. 测试 一. 介绍 Django包含一个contenttypes应用程序(app), 可以跟踪Django项目中安装的所有模型(Model), 提供用于处理模型的高级通用接口. Contenttypes应用的核心是ContentType模型, 位于django.contrib.contenttypes.models.ContentType. ContentTyp…
contenttypes组件 介绍 Django包含一个contenttypes应用程序(app),可以跟踪Django项目中安装的所有模型(Model),提供用于处理模型的高级通用接口. Contenttypes应用的核心是ContentType模型,位于django.contrib.contenttypes.models.ContentType. ContentType的实例表示并保存项目中安装的模型的信息,每当有新的模型时会自动创建新的ContentType实例. 只要使用django-a…
contenttypes组件 介绍 Django包含一个contenttypes应用程序(app),可以跟踪Django项目中安装的所有模型(Model),提供用于处理模型的高级通用接口. Contenttypes应用的核心是ContentType模型,位于django.contrib.contenttypes.models.ContentType. ContentType的实例表示并保存项目中安装的模型的信息,每当有新的模型时会自动创建新的ContentType实例. 只要使用django-a…
Django contenttypes 应用 什么是Django ContentTypes? Django ContentTypes是由Django框架提供的一个核心功能,它对当前项目中所有基于Django驱动的model提供了更高层次的抽象接口. contenttypes 是Django内置的一个应用,可以追踪项目中所有app和model的对应关系,并记录在ContentType表中. 每当我们创建了新的model并执行数据库迁移后,ContentType表中就会自动新增一条记录.比如我在应用…
一.contenttypes介绍 它的作用:可以通过两个字段让表和N张表创建FK关系 二.ContentType.GenericForeignKey.GenericRelation 表结构: from django.db import models from django.contrib.contenttypes.models import ContentType from django.contrib.contenttypes.fields import GenericForeignKey,…
Django contenttypes 应用 contenttypes 是Django内置的一个应用,可以追踪项目中所有app和model的对应关系,并记录在ContentType表中. 每当我们创建了新的model并执行数据库迁移后,ContentType表中就会自动新增一条记录.比如我在应用app01的models.py中创建表class Electrics(models.Model): pass.从数据库查看ContentType表,显示如下: id app_label model … a…
一.什么是Django ContentTypes? 1.Django 包含一个ContentTypes 应用,它可以追踪安装在你的Django 项目里的所有应用,并提供一个高层次的.通用的接口用于与你的模型进行交互. 2.Django ContentTypes是由Django框架提供的一个核心功能,它对当前项目中所有基于Django驱动的model提供了更高层次的抽象接口. 3.Contenttypes 的核心应用是ContentType模型,存在于 django.contrib.content…
一.什么是Django ContentTypes? Django ContentTypes是由Django框架提供的一个核心功能,它对当前项目中所有基于Django驱动的model提供了更高层次的抽象接口. 当然我们不是说的是http中的content-type!完全没有任何关系!下面将一步一步解释Django ContentTypes在Django框架中做了什么,以及如何使用Django ContentTypes. 当然,如果对于ContentTypes有了初步了解而只是不了解它的应用场景,可…
一.什么是Django ContentTypes? Django ContentTypes是由Django框架提供的一个核心功能,它对当前项目中所有基于Django驱动的model提供了更高层次的抽象接口.主要用来创建模型间的通用关系(generic relation). 进一步了解ContentTypes可以直接查阅以下这两个链接: Django official documentation:The contenttypes framework stackoverflow: How exact…
contenttypes 是Django内置的一个应用,可以追踪项目中所有app和model的对应关系,并记录在ContentType表中. 1.创建一个项目 2.数据库迁移,生成默认表. 3.存着所有app的名字.表名字. 每当我们创建了新的model并执行数据库迁移后,ContentType表中就会自动新增一条记录.比如我在应用app01的models.py中创建表class Electrics(models.Model): pass.从数据库查看ContentType表,显示如下: id…
Conttenttypes介绍 当你看到contenttype你是不是想到了请求头的contenttype? 但是 此contenttypes不是请求头Content-Type而是Django自带的app 或许你当时没有注意到contenttypes,这里简单的介绍一下,如何用Django自带的contenttypes 业务需求 我们要开设两大门课程,一个是专业课,一个是学位课, 比如专业课有: 21天python入门 网络编程 Linux基础 学位课: Python全栈开发 Linux运维 每…
Django contenttypes是一个非常有用的框架,主要用来创建模型间的通用关系(generic relation).不过由于其非常抽象, 理解起来并不容易.当你创建一个django项目的时候,可以看到在默认的INSTALL_APPS已经包含了django.contrib.contenttypes. 今天我们来重点讲下它的使用场景及如何使用django contenttypes. # Application definition INSTALLED_APPS = [ 'django.co…
书籍出处:https://www.packtpub.com/web-development/django-example 原作者:Antonio Melé (译者注:本人目前在杭州某家互联网公司工作,岗位是测试研发,非常喜欢python,目前已经使用Django为公司内部搭建了几个自动化平台,因为没人教没人带,基本靠野路子自学,走过好多弯路,磕磕碰碰一路过来,前段时间偶尔看到<Django By Example>这本书,瞬间泪流满面,当初怎么没有找到这么好的Django教程.在看书的过程中不知…
一.Django 简介 Django 是一个由 Python 写成的开放源代码的 Web 应用框架.它最初是被开发来用于管理劳伦斯出版集团旗下的一些以新闻内容为主的网站的,即是 CMS(内容管理系统)软件.并于2005年7月在 BSD 许可证下发布.这套框架是以比利时的吉普赛爵士吉他手 Django Reinhardt 来命名的.由于 Django 的是在一个快节奏的新闻编辑室环境下开发的,它的目的是使常见的 Web 开发任务,快速和容易. MTV 模式 Django 采用了 MTV 设计模式…
本文是博主翻译的Django1.10版本官方文档的第一部分,如时间充裕,争取一直翻译下去,经验不足,或有错漏,敬请指正. 另外对于公开文档进行翻译的版权问题不是很清楚,如有侵权请联系我! 另外,要转载该系列翻译文章,也请联系博主. 第二部分传送门 第三部分传送门 第四部分传送门 3.2 模型和数据库Models and databases 3.2.2 查询操作making queries 3.3.8 会话sessions 目录 第一章.Django1.10文档组成结构 1.1 获取帮助 1.2…
前言 由于比较懒,自己弄了一个用户验证,没有自己写后台,用了django自带的user认证,并通过admin直接进行管理,但默认的admin并不漂亮,于是使用了这个django-suit插件,效果对比一下. 我用的是django-1.9.9它的admin是这样的.老版本的django admin长的更丑. 使用了suit之后的admin是这样的. 清凉了很多吧,现在开始搞它. 基础环境 我的环境 python: 2.7.10 django: 1.9.9 安装 pip install django…
表结构 先创建一个新的app python manage.py startapp test01 在settings.py注册一下app INSTALLED_APPS = ( 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', '…
session 在这里先说session 配置URL from django.conf.urls import patterns, include, url from django.contrib import admin admin.autodiscover() urlpatterns = patterns('', # Examples: # url(r'^$', 'csvt11.views.home', name='home'), # url(r'^blog/', include('blog…
第十九章  Django进阶 到目前为止,当我们的程序涉及到数据库相关操作时,我们一般都会这么搞: 创建数据库,设计表结构和字段 使用 MySQLdb 来连接数据库,并编写数据访问层代码 业务逻辑层去调用数据访问层执行数据库操作 import MySQLdb def GetList(sql): db = MySQLdb.connect(user=', host='localhost') cursor = db.cursor() cursor.execute(sql) data = cursor.…
web框架 Web应用框架有助于减轻网页开发时共通性活动的工作负荷,例如许多框架提供数据库访问接口.标准样板以及会话管理等,可提升代码的可再用性.简单地说,就是你用别人搭建好的舞台来做表演,用别人做好的模板进行功能扩展.python的web应用框架主要有django,Tornado. MVC模式和MTV模式 MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,JAVA的WEB应用框架就是基于这种模…
from验证 django中的Form一般有两种功能: 输入html-----------不能你自己写一些标签,而帮你自动生成 验证用户输入-------将用户验证信息保存起来,可以传到前端 # !/usr/bin/env python # -*- coding:utf-8 -*- from django.shortcuts import render,HttpResponse from app01.forms import Form1 from django.forms.utils impor…
数据库配置 django的数据库相关表配置在models.py文件中,数据库的连接相关信息配置在settings.py中 models.py相关相关参数配置 from django.db import models class userinfo(models.Model): name = models.CharField(max_length=30) email = models.EmailField() memo = models.TextField() 可用的字段: 1.models.Aut…
路由系统 简而言之,django的路由系统作用就是使views里面处理数据的函数与请求的url建立映射关系.使请求到来之后,根据urls.py里的关系条目,去查找到与请求对应的处理方法,从而返回给客户端http页面数据  1.最基础映射 用户访问http://127.0.0.1:8000/index 然后后端使用index()函数处理 urls.py from django.conf.urls import include, url from django.contrib import adm…
Web框架介绍 一般会分为两部分:服务器程序和应用程序.服务器程序负责对socket服务器进行封装,并在请求到来时,对请求的各种数据进行整理.应用程序则负责具体的逻辑处理.为了方便应用程序的开发,就出现了众多的Web框架,例如:Django.Flask.web.py 等.不同的框架有不同的开发方式,但是无论如何,开发出的应用程序都要和服务器程序配合,才能为用户提供服务.这样,服务器程序就需要为不同的框架提供不同的支持.这样混乱的局面无论对于服务器还是框架,都是不好的.对服务器来说,需要支持各种不…