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字段类型介绍的更多相关文章

  1. Django ORM字段类型 单表增删改查 万能的双下划线

    1.ORM三种模型 模型之间的三种关系:一对一,一对多,多对多. 一对一:实质就是在主外键(author_id就是foreign key)的关系基础上,给外键加了一个UNIQUE=True的属性: 一 ...

  2. Python Django ORM 字段类型、参数、外键操作

    AutoField(Field) - int自增列,必须填入参数 primary_key=True BigAutoField(AutoField) - bigint自增列,必须填入参数 primary ...

  3. Django model字段类型清单

    转载:<Django model字段类型清单> Django 通过 models 实现数据库的创建.修改.删除等操作,本文为模型中一般常用的类型的清单,便于查询和使用: AutoField ...

  4. django2.0表的ORM字段类型和展示

    django2.0表的ORM字段类型和展示 思路整理 今天想给博客的文章添加增加一个分类字段 但是不知道这种后台字段生成的字段,样式怎么处理 后来找到了,就是在定义模型的字段定义的时候 决定样式 mo ...

  5. Django model 字段类型清单

    Django model字段类型清单 Django 通过 models 实现数据库的创建.修改.删除等操作,本文为模型中一般常用的类型的清单,便于查询和使用: AutoField 一个自动递增的整型字 ...

  6. MySQL 字段类型介绍

    MySQL 基础篇 三范式 MySQL 军规 MySQL 配置 MySQL 用户管理和权限设置 MySQL 常用函数介绍 MySQL 字段类型介绍 MySQL 多列排序 MySQL 行转列 列转行 M ...

  7. Django ORM字段和字段参数

    Object Relational Mapping(ORM) ORM介绍 ORM概念 对象关系映射(Object Relational Mapping,简称ORM)模式是一种为了解决面向对象与关系数据 ...

  8. Django model 字段类型及选项解析

    字段类型选择: AutoField(Field) - int自增列,必须填入参数 primary_key=True BigAutoField(AutoField) - bigint自增列,必须填入参数 ...

  9. django orm 基本Field介绍

    ORM:object relational mapping,对象关系映射 django中使用原生sql的弊端: 1.SQL语句重复率很高,利用率不高 2.如果业务逻辑生变,原生SQL更改起来比较多 3 ...

随机推荐

  1. JavaScript使用正則表達式

    2.0 简单介绍 正則表達式是能够用来查找与给定模式匹配的文本的搜索模式.比如,在上一章中,我们在一个较长的字符串中查找子字符串Cookbook: var testValue = "This ...

  2. android传感器;摇一摇抽签功能

    package com.kane.sensortest; import java.util.Random; import android.hardware.Sensor; import android ...

  3. 飞思卡尔 imx6 GC0308 摄像头驱动配置调试过程

    GC0308摄像头驱动程序使用的是linux v4l2协议,通过i2c信号进行控制.GC0308摄像头.对上电时序要求非常严格,一定要依据datasheet初始化摄像头. 本驱动使用的3.10内核,所 ...

  4. hdu 6198(矩阵快速幂)

    number number number Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Oth ...

  5. bzoj1607 [Usaco2008 Dec]Patting Heads 轻拍牛头——暴力

    题目:https://www.lydsy.com/JudgeOnline/problem.php?id=1607 观察一下数据范围,就是纯粹的暴力. 代码如下: #include<iostrea ...

  6. bzoj1088扫雷(搜索)

    1088: [SCOI2005]扫雷Mine Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 3669  Solved: 2153[Submit][St ...

  7. 聊聊 webpack 打包如何压缩包文件大小

    想必很多人都经历过做完一个项目后,再打包发现某些文件非常大,导致页面加载时很慢,这就很影响用户体验了,所以在我经历了一些打包后,讲讲如何有效地缩小包体积,加快页面的首屏渲染 动态 polyfill 相 ...

  8. Django总结三

    回顾: - 装饰器 模板 - def wrapper(func): def inner(*args, **args): 执行被执行函数之前的操作 res = func(*args, **args) 执 ...

  9. hihocode 编程练习赛17

    1. f1 score 首先了解f1 score的计算方法, 我记得是学信息检索知道的, 然后简单处理就行. 由于我写的比较麻烦, 中间处理过程引入了一些除数为0的情况,导致错了很多次.其实是很简单的 ...

  10. Parameter index out of range (1 > number of parameters, which is 0).

    数据库错误:Parameter   index   out   of   range   (1   >   number   of   parameters,   which   is   0) ...