Django - orm字段类型介绍
1、根据类自动创建数据库表
#app.py下的models.py
python manage.py makemigrations
python manage.py migrate
执行完上述命令后,自动创建数据库数据。
2、可以对现在表结构进行修改操作
2.1)、修改字段长度
2.2)、增加字段
gender=models.CharFiled(max_length=32,null=True) 表示字段可以为空
执行修改操作时,均执行1中的2个命令
3、字段类型检查
设置字段类型时,有些会在admin权限下做自动检查:

例如:CharField 和EmailField 都是字符串类型,其中CharField可以在admin下做类型检查
需要在admin.py中,增加代码如下:

在django.urls中,url和函数对应关系,该列未注释:

在浏览器中输入地址:
通过超级用户登陆后,即可实现对字段格式的检查 ;
创建超级用户
python manage.py createsuperuser
用户名:root
密码:root!23456

在创建表时,也可以通过手动创建自增ID。
4、字段参数
null ->db是否为空
default - >默认值
primary_key - >主键
db_column ->列名
db_index ->建索引 db_index=True
unique ->唯一索引 unique=True
unique_for_date ->只对时间做索引
unique_for_month ->只对月份作索引
unique_for_year ->只对年份做索引
auto_now ->创建时自动生成
auto_now_add ->更新时,自动更新为当前时间

备注:更新时,只支持下面这种方式(红框框中方法),上面的方法(注释部分),执行完后,时间不会更新。
choices ->在django admin中显示下拉框;避免连表查询;

blank ->在django admin中,是否可以为空
verbose_name在django admin中,显示名称(例如:verbose_name="用户名“)
editable ->在django admin中,是否可编辑
help_text ->在django admin中,提示信息(help_text=pwd)
validations ->自定义验证机制
Django - orm字段类型介绍的更多相关文章
- Django ORM字段类型 单表增删改查 万能的双下划线
1.ORM三种模型 模型之间的三种关系:一对一,一对多,多对多. 一对一:实质就是在主外键(author_id就是foreign key)的关系基础上,给外键加了一个UNIQUE=True的属性: 一 ...
- Python Django ORM 字段类型、参数、外键操作
AutoField(Field) - int自增列,必须填入参数 primary_key=True BigAutoField(AutoField) - bigint自增列,必须填入参数 primary ...
- Django model字段类型清单
转载:<Django model字段类型清单> Django 通过 models 实现数据库的创建.修改.删除等操作,本文为模型中一般常用的类型的清单,便于查询和使用: AutoField ...
- django2.0表的ORM字段类型和展示
django2.0表的ORM字段类型和展示 思路整理 今天想给博客的文章添加增加一个分类字段 但是不知道这种后台字段生成的字段,样式怎么处理 后来找到了,就是在定义模型的字段定义的时候 决定样式 mo ...
- Django model 字段类型清单
Django model字段类型清单 Django 通过 models 实现数据库的创建.修改.删除等操作,本文为模型中一般常用的类型的清单,便于查询和使用: AutoField 一个自动递增的整型字 ...
- MySQL 字段类型介绍
MySQL 基础篇 三范式 MySQL 军规 MySQL 配置 MySQL 用户管理和权限设置 MySQL 常用函数介绍 MySQL 字段类型介绍 MySQL 多列排序 MySQL 行转列 列转行 M ...
- Django ORM字段和字段参数
Object Relational Mapping(ORM) ORM介绍 ORM概念 对象关系映射(Object Relational Mapping,简称ORM)模式是一种为了解决面向对象与关系数据 ...
- Django model 字段类型及选项解析
字段类型选择: AutoField(Field) - int自增列,必须填入参数 primary_key=True BigAutoField(AutoField) - bigint自增列,必须填入参数 ...
- django orm 基本Field介绍
ORM:object relational mapping,对象关系映射 django中使用原生sql的弊端: 1.SQL语句重复率很高,利用率不高 2.如果业务逻辑生变,原生SQL更改起来比较多 3 ...
随机推荐
- swift 2.0 语法 函数
//: Playground - noun: a place where people can play import UIKit /*: 函数 * 格式 func 函数名称(形参名称1: 形参类型, ...
- LeetCode 648. Replace Words (单词替换)
题目标签:HashMap 题目给了我们一个array 的 root, 让我们把sentence 里面得每一个word 去掉它得 successor. 把每一个root 存入hash set,然后遍历s ...
- Ubuntu 12.04 LTS 无法进入桌面环境
今天开机后,在登陆的时候,进入了登陆界面(选择用户,输入密码的那个界面),输入正确的密码后屏幕跳转了一下,但是很快又回到了登陆界面.然后我就尝试以guest [访客]的身份登陆,发现进入了桌面系统. ...
- 数据库操作语句大全(sql)
一.基础 1.说明:创建数据库CREATE DATABASE database-name 2.说明:删除数据库drop database dbname3.说明:备份sql server--- 创建 备 ...
- tiny4412 裸机程序 八、重定位到DRAM及LCD实验【转】
本文转载自:http://blog.csdn.net/eshing/article/details/37407423 版权声明:本文为博主原创文章,未经博主允许不得转载. 目录(?)[+] 一 ...
- 主表a主表b 从表c中有ab两个表中各一个字段a1,b1 从表d中有ab两个表中各一个字段a2,b2
a1和a2在a表中具有唯一性 b1和b2在b表中具有唯一性 现在需要连接c表和d表 需要分两步来做 1.先让c表join表a和表b select c.*,a.a2,b.b2 from c inner ...
- P2495 [SDOI2011]消耗战 虚树
这是我做的第一道虚树题啊,赶脚不错.其实虚树也没什么奇怪的,就是每棵树给你一些点,让你多次查询,但是我不想每次都O(n),所以我们每次针对给的点建一棵虚树,只包含这些点和lca,然后在这棵虚树上进行树 ...
- Spark 机器学习 ---Word2Vec
package Spark_MLlib import org.apache.spark.ml.feature.Word2Vec import org.apache.spark.sql.SparkSes ...
- poj1006生理周期(中国剩余定理)
生理周期 Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 139224 Accepted: 44687 Descripti ...
- Java 删除List元素的正确方式
方式一:使用Iterator的remove()方法 public class Test { public static void main(String[] args) { List<Strin ...