Django基础篇--Models
在Django中创建与数据库的链接并调用数据库的数据是很关键的步骤,那么怎么实现这个过程呢?
下面这篇文章简单梳理了一下创建Model层的过程和应用
模型-Models
首先需要理解什么是模型?
模型,根据数据库中数据表中数据表的结构而创建出来的class
1. 创建和使用模型的方法
1)创建数据库需要到数据库中手动创建 create database …
2) 配置 setting.py中配置
DATABASES ={
‘default’:{
‘ENGINE’:
‘NAME’:},
}
参数的解析:
1. ENGINE: 引擎 django.db.backends.mysql
2. NAME :连接到的数据库名称 web.db
3.USER: 用户名称 ,通常为root
4. PASSWORD: 密码
5. HOST : 连接的主机,本机localhost/127.0.0.1/可以不写
6. PORT :端口,3306
例如下面这张图:

在做数据库集群的时候如果要连接多个数据库,可以在写default后面再添加一个字典类型的key-value对,
key的名称可以自己定义。
2. 如何编写Models
首先需要理解两个概念,实体类和实体
1)实体类
Models中每个class都称之为模型类(Model)或者实体类(Entry)
Models中的每个实体类,必须继承自models.Model(原生类是没有models的操作的)
2)实体:
数据表中的一行记录,就是一个实体。
实体完整性:确保每张表中的数据不能有重复。
主键是为了实现实体完整性的方法之一。
3.Django中提供的数据字段 和 字段选项
这里只写一些比较常用的,更多详细的用法细节可以移步到官网 : www.djangoproject.com
在Documentaiton栏目中相应找到 The model layer

1. 数据字段
1) CharField() 字符串, 属性值max_length必须要写,表明字符串长度,相当于原生MySQL中的char()
2) BooleanField() 布尔值,True或者False
3) DataField() 时间,只有日期,不带时间点,例如:2018-1-1
4) DateTimeField() 时间,带时间点,例如:2018-1-1 12:00:00
5) DecimalField() 带小数点的定点数,可以用于与金融或者数字有关的字段
6) EmailField() Email类型
7) URLField() URL类型,在数据库中会转换为固定长度(200)字符串
8) FileField() 文件类型
9) IntergerField() 整型数
10) FloatField() 浮点数
11) ImageField() 图片,一般在实际应用中存放图片的地址
12) TextField() 文本
2. 字段选项
1) null 是否允许为空,赋值True或者False,例如:name = models.Char(max_length= 10 , null = False)
2) blank 是否为空格
3) choices
4)db_column 属性名,例如:db_column = ' music_name '
5)db_index 索引,为该字段设置索引
6) default 默认值,例如:password = models.Char(max_length= 10 , defalut = '123456')
7) primary_key 主键,值为True/False,默认为False(不设置为主键)
Django基础篇--Models的更多相关文章
- 01: Django基础篇
目录:Django其他篇 01:Django基础篇 02:Django进阶篇 03:Django数据库操作--->Model 04: Form 验证用户数据 & 生成html 05:Mo ...
- 01:django基础篇
Django其他篇 目录: 1.1 django初探 1.2 第一个django项目 1.3 django render/redirect/HttpResponse 和 request.GET req ...
- python的django基础篇
一.Django基础 Django 是用Python开发的一个免费开源的Web框架,可以用于快速搭建高性能,优雅的网站! Django的特点: 强大的数据库功能:拥有强大的数据库操作接口(QueryS ...
- python3之Django基础篇
一.Django基础 Django 是用Python开发的一个免费开源的Web框架,可以用于快速搭建高性能,优雅的网站! Django的特点: 强大的数据库功能:拥有强大的数据库操作接口(QueryS ...
- Web框架django基础篇
基本配置及学习 路由(Urls).视图(Views).模板(Template).Model(ORM). 简介 Django 是一个由 Python 写成的开放源代码的 Web 应用框架.它最初是被开 ...
- django 基础篇
jdango 简介: 一个可以使Web开发工作愉快并且高效的Web开发框架. 使用Django,使你能够以 小的代价构建和维护高质量的Web应用. Python的WEB框架有Django.Tornad ...
- python 之 Django 基础篇
1,Django流程介绍 MTV模式 著名的MVC模式:所谓MVC就是把web应用分为模型(M),控制器(C),视图(V)三层:他们之间以一种插件似的,松耦合的方式连接在一起. 模型负责业务对象与数据 ...
- django基础篇
Python的WEB框架有Django.Tornado.Flask 等多种,Django相较与其他WEB框架其优势为:大而全,框架本身集成了ORM.模型绑定.模板引擎.缓存.Session等诸多功能. ...
- Django 基础篇(一)
创建虚拟环境 创建:mkvirtualenv [虚拟环境名称] 删除:rmvirtualenv [虚拟环境名称] 进入:workon [虚拟环境名称] 退出:deactivate 所有的虚拟环境,都位 ...
随机推荐
- asp.net mvc 安全测试漏洞 " HTTP 动词篡改的认证旁路" 问题解决
IBM Security Appscan漏洞筛查-HTTP 动词篡改的认证旁路漏洞,具体解决方案: 在Web.Config中system.webServer节点增加配置security: <se ...
- iOS-UIImage图片绘制颜色
- (UIImage *)dtk_setImageColor:(UIColor *)imageColor{ //获取画布 UIGraphicsBeginImageContextWithOptions( ...
- Java程序员如何运用所掌握的技术构建一个完整的业务架构
1.通用架构概述 创业之初,我们往往会为了快速迭代出产品,而选择最简单的技术架构,比如LAMP架构,SSH三层架构.这些架构可以适应初期业务的快速发展,但是,随着业务变得越来越复杂,我们会发现这些架构 ...
- centos通过Supervisor配置.net core守护进程
安装Supervisor easy_install supervisor 生成默认配置文件 echo_supervisord_conf > /etc/supervisord.conf 生成的配置 ...
- 理解Array.prototype.fill和Array.from
之所以将这两个方法放在一起说,是因为经常写这样的代码: Array.from({length: 5}).fill(0),看起来很简洁,但是踩到坑之后才发现自己对这两个方法实在是不求甚解. Array. ...
- 音频标签化2:youtube-8m项目的训练、评估与测试
之前小程介绍了使用机器学习的办法来解决"音频标签化"的问题,并且提到了训练样本audioset跟youtube-8m的dataset,而训练模型上也提到了youtube-8m的模型 ...
- zabbix 自定义监控项简单案例
例如:获取被监控主机的登录用户数 以uptime为例: 输入命令:uptime | awk '{print $6}' 可以获得当前登录用户数(不通终端打印出的位置不同) 1.被监控主机修改zabbi ...
- ABP默认生成数据库结构
数据库设计文档 -- MyFirstABP 数据库设计文档 数据库名:MyFirstABP 序号 表名 说明 1 AbpFeatures 2 AbpEditions 3 AbpLanguage ...
- 从零搭建生产环境的ghost2.0博客
当前安装过程是在ghost cli 1.9.2上的,由于ghost更新特别快,我安装我个人博客cmlanche.com的时候还是1.9.1,当时没碰到啥问题,到1.9.2就有一点点不一样了,所以要注意 ...
- 一张 JVM 相关的思维脑图(4.4M)
楼主学习 JVM 总结的知识点,用思维脑图串起来,温故而知新,其中含有类加载器,内存布局,GC(右侧). 最多的就是 GC 的内容了. 内容有错误之处,还请指正. 大图地址