django之models模块使用】的更多相关文章

假定models中有一个类BookInfo 模块查询不同于sql语句,模块查询的结果会返回符合条件的整个一行的对象,或者多个对象组成的查询集. 查询集类似列表,有相似的方法. 1 model查询语句: 1 get(条件) 查询一条   多条或者没有数据会抛出异常 返回一个BookInfo对象 BookInfo.objects.get(id = 1) #查询bookinfo表中id为1的数据 2 all() 查询所有 不能加条件 返回一个查询集 类似列表,有和列表一样的方法 BookInfo.ob…
定义模型 将数据库表定义成类,集成models.Model from django.db import models # Create your models here. class Author(models.Model):     name=models.CharField(max_length=100) django会自动生成id字段作为主键,如果不定义主键的话 2,使用模型 将使用manage.py startapp XXX 创建的应用加入到setting下的INSTALLED_APPS…
一.字段 1. AutoField(Field) int自增列,必须填入参数 primary_key=True 2.BigAutoField(AutoField) bigint自增列,必须填入参数 primary_key=True 注意:当model中如果没有自增列,则自动会创建一个列名为id的列 3.SmallIntegerField(IntegerField) 小整数 -32768 - 32767 4.PositiveSmallIntegerField(PositiveIntegerRelD…
第三百零九节,Django框架,models.py模块,数据库操作——F()和Q()运算符:|或者.&并且 F()可以将数据库里的数字类型的数据,转换为可以数字类型 首先要导入 from django.db.models import F from django.shortcuts import render from app1.models import * #导入数据库操作模块 from django.db.models import F #导入F类 #逻辑处理模块 def special(…
第三百零八节,Django框架,models.py模块,数据库操作——链表结构,一对多.一对一.多对多 链表操作 链表,就是一张表的外键字段,连接另外一张表的主键字段 一对多 models.ForeignKey()外键字段一对多,值是要外键的表类 from __future__ import unicode_literals from django.db import models #导入models对象 class yong_hu_shen_fen(models.Model): #创建用户是否…
Django框架,models.py模块,数据库操作——表类容的增删改查 增加数据 create()方法,增加数据 save()方法,写入数据 第一种方式 表类名称(字段=值) 需要save()方法,写入数据 from django.shortcuts import render from app1.models import * #导入数据库操作模块 #逻辑处理模块 def special(request): a = yhubiao(anem=') #第一种添加数据,实例化表类,在实例化里传参…
Django框架,models.py模块,数据库操作——创建表.数据类型.索引.admin后台,补充Django目录说明以及全局配置文件配置 数据库配置 django默认支持sqlite,mysql, oracle,postgresql数据库. 1,django默认使用sqlite的数据库,默认自带sqlite的数据库驱动   引擎名称:django.db.backends.sqlite3 在全局配置文件settings.py可以看到确认配置使用的sqlite数据库 # Database # h…
F()可以将数据库里的数字类型的数据,转换为可以数字类型 首先要导入 from django.db.models import F from django.shortcuts import render from app1.models import * #导入数据库操作模块 from django.db.models import F #导入F类 #逻辑处理模块 def special(request): #获取yu_wen_lao_shi表里id等于1的那条数据,将shuzi字段的值自身加1…
Django框架,models.py模块,数据库操作——表类容的增删改查 增加数据 create()方法,增加数据 save()方法,写入数据 第一种方式 表类名称(字段=值) 需要save()方法,写入数据 from django.shortcuts import render from app1.models import * #导入数据库操作模块 #逻辑处理模块 def special(request): a = yhubiao(anem='张三',mim='279819') #第一种添加…
Django框架,models.py模块,数据库操作——创建表.数据类型.索引.admin后台,补充Django目录说明以及全局配置文件配置 数据库配置 django默认支持sqlite,mysql, oracle,postgresql数据库. 1,django默认使用sqlite的数据库,默认自带sqlite的数据库驱动   引擎名称:django.db.backends.sqlite3 在全局配置文件settings.py可以看到确认配置使用的sqlite数据库 # Database # h…
上一节做到把一个应用加入到项目中,现在再往里面加一个数据库就可以与数据库进行交互了. Django默认有一个轻量级的数据库叫SQLite,当我们要更换其他的数据库时,则需要绑定数据库,如何绑定?首先打开项目的settings.py,找到里面的DATABASES,将里面的engine.name.password等改为要连接的数据信息就可以了.这就是数据库与项目绑定的基本方法. Models下面来创建模型: 前面说到模型其实就是数据库的布局,也就是要设计那些数据库,那么就有哪些模型.重温一遍:Mod…
django框架的models模块ORM框架,能够让我们通过编写类的方式,帮助我们自动生成数据库表. 生成的数据库表名为 应用模块名称_类名 数据库表中字段名 如果我们没有在参数中指定,就是我们写的类属性名. 通过编写类属性的方式,我们可以创建数据库表. 1 首先编写类: 稍后详细 2 然后生成迁移文件: python manage.py makemigrations 3 执行迁移: python manage.py migrate 三步骤,django会帮助我们生成相应的sql语句创建数据库表…
1. django 模型models 常用字段          1.models.AutoField 自增列 = int(11) 如果没有的话,默认会生成一个名称为 id 的列 如果要显式的自定义一个自增列,必须设置primary_key=True.   2.models.CharField 字符串字段 必须设置max_length参数   3.models.BooleanField 布尔类型=tinyint(1) 不能为空,可添加Blank=True   4.models.ComaSepar…
APIView django原生View post请求 from django.shortcuts import render, HttpResponse from django import views class TestView(views.View): def post(self, request): print(request.POST) # <QueryDict: {'a': ['1'], 'b': ['2']}> print(request.body) # b'a=1&b…
ORM Object Relational Mapping,简称ORM,是一种为了解决面向对象与关系数据库存在的互不匹配的现象的技术. 通过使用描述对象和数据库之间映射的元数据,将程序中的对象自动持久化到关系数据库中. 优势: ORM解决的主要问题是对象和关系的映射.它通常将一个类和一张表一一对应,类的每个实例对应表中的一条记录,类的每个属性对应表中的每个字段. ORM提供了对数据库的映射,不用直接编写SQL代码,只需操作对象就能对数据库操作数据. 让软件开发人员专注于业务逻辑的处理,提高了开发…
Django中,与数据库相关的模块是model模块,它提供了一种简单易操作的API方式与数据库交互,它是通过ORM映射的方式来操作数据库,一个类对应数据库一张表,一个类属性,对应该表的一个字段,一个实例化的类对象就是一个表中的一行数据信息.在开发的阶段,工程师只需要python语言本身进行代码设计,而不用太过于分散注意力去操作SQL原生操作语句,这样的方法既有它的优点,同样也有不足之处. 它们优缺点的大致如下: 优点: 1.实现了代码与数据库的解耦合 2.开发者不需要操作太多的原生SQL,可以提…
模型元数据是“任何不是字段的数据”,比如排序选项(ordering),数据库表名(db_table)或者人类可读的单复数名称(verbose_name 和verbose_name_plural).在模型中添加class Meta是完全可选的,所有选项都不是必须的. class Book(models.Model): name =models.CharField(max_length=32) def __str__(self): return self.name class Author(mode…
模型(Models) 模型是你的数据的唯一的.确定的信息源. 它包含你所储存数据的必要字段和行为. 通常,每个模型对应数据库中唯一的一张表. 基础: 每个模型都是一个Python类,它们都是django.db.models.Model的子类. 每一个模型属性都代表数据库中的一个字段. 通过所有这一切,Django为你提供一个自动生成的数据库访问API:请参阅执行查询. 简短示例 这个例子定义一个Person模型,它有first_name 和last_name 两个属性: from django.…
1.Model 一对多 补充 models如下: class UserType(models.Model): caption = models.CharField(max_length=16) class UserInfo(models.Model): username = models.CharField(max_length=32) pwd = models.CharField(max_length=32) user_type = models.ForeignKey('UserType')…
首先,要理解这句话:模型是你的数据的唯一的.权威的信息源.它包含你所存储数据的必要字段和行为.通常,每个模型对应数据库中唯一的一张表 基础:每个模型都是django.db.models.Model的一个python子类 模型的每个属性都表示为数据库中的一个字段 django提供一套自动生成的用于数据库访问的API,下一章总结 1.第一个例子 from django.db import models class Person(models.Model): first_name = models.C…
title: Django ORM models操作 tags: Django --- Django ORM models操作 Django ORM基本操作 一.数据库的创建及增删改查 1 使用类创建表 在models.py中 from django.db import models 继承models.Model 1 写类,对应表名 from django.db import models class UserInfo(models.Model): name = models.CharField…
内容概要 1.关系对象映射ORM 2.admin的配置(选修) 3.all().values().value_list()的对比 4.数据库操作(一对一.一对多.多对多) 5.HttpResponse和render的对比 1.关系对象映射ORM 一.用于实现面向对象编程语言里不同类型系统的数据之间的转换,换言之,就是用面向对象的方式去操作数据库的创建表以及增删改查等操作. 优点: 1 ORM使得我们的通用数据库交互变得简单易行,而且完全不用考虑该死的SQL语句.快速开发,由此而来. 2 可以避免…
0907自我总结 重新整理django中Auth模块 from django.contrib import auth 一.设置 默认Auth表单 auth默认是使用自带的user表单 自定义Auth表单 一定要在settings.py中告诉Django,我现在使用我新定义的UserInfo表来做用户认证.写法如下: # 引用Django自带的User表,继承使用时需要设置 AUTH_USER_MODEL = "app名.UserInfo" 在modles.py创建表单模型可以对Abst…
目录 一.跨站请求伪造(csrf) 1. 什么是csrf 2. 钓鱼网站原理 3. 如何解决csrf (1)思路: (2)实现方法 (3)实现的具体代码 3. csrf相关的装饰器 (1)csrf_protect装饰器 (2)csrf_exempt装饰器 二.django的settings源码剖析 1. 模仿django的settings源码设计自定义settings 三.django的auth模块 1. 使用终端如何创建超级用户: 2. auth模块常用方法 (1)创建用户 (2)校验用户名和…
本节内容 路由系统 models模型 admin views视图 template模板 引子 讲django的models之前, 先来想一想, 让你通过django操作数据库,你怎么做? 做苦思冥想,可能会这样写. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 import pymysql     def index(request):     # 创建连接     conn = pymysql.connect(host='127.0.0.1', port=330…
Models 数据库的配置 1    django默认支持sqlite,mysql, oracle,postgresql数据库 <1>sqlite django默认使用sqlite的数据库,默认自带sqlite的数据库驱动 引擎名称:django.db.backends.sqlite3 <2>mysql 引擎名称:django.db.backends.mysql 2    mysql驱动程序 MySQLdb(mysql python) mysqlclient MySQL PyMyS…
前提: app名称为core,models.py 如下: #coding: utf8 import datetime from django.db import models class Order(models.Model): orderid = models.CharField(max_length=64, unique=True) desc = models.CharField(max_length=512) product = models.CharField(max_length=51…
摘自:http://www.cnblogs.com/xdotnet/archive/2012/03/07/aspnet_mvc40_validate.html 了解了这些就可以对MVC进一步认识,相信很多人都对MVC中三个模块有一定的认识.今天我们主要来看一下Models模块,这个和我们三层里用的 实体类有点相似,不同的是这里的属性需要添加一些验证属性(Attribute)或其他的一些Filter(过滤器).在MVC中验证属性主要包含在 System.ComponentModel.DataAnn…
Python 2.7.10,django 1.8.6 外键关联:http://www.bubuko.com/infodetail-618303.html 字段属性:http://www.cnblogs.com/lhj588/archive/2012/05/24/2516040.html 过滤条件:http://www.douban.com/note/301166150/ django模型很强大,可以通过外键实现: 1.主表查询子表 2.子表查询主表 3.主表查询主表(多对多情况) 下面举例中表A…
F() 的执行不经过 python解释器,不经过本机内存,是生成 SQL语句的执行. # Tintin filed a news story! reporter = Reporters.objects.get(name='Tintin') reporter.stories_filed += 1 reporter.save() # 等于 from django.db.models import F reporter = Reporters.objects.get(name='Tintin') re…