djangoORM 修改表结构/字段/外键操作
Django支持修改表结构

把max_length=64 改为60
再执行一遍
python manage.py makemigrations
python manage.py migrate
如果是增加一列

再执行一遍
python manage.py makemigrations
会出现众多选项

如果选择1,会让你输入一个默认值 我们输入“alex”

再执行python manage.py migrate

就更新了数据库

-------------
如果新加的一列可为空值Null

再执行一遍
python manage.py makemigrations
python manage.py migrate

--------
如果想删除一列
注释掉

再执行一遍
python manage.py makemigrations
python manage.py migrate
即可删掉
============================================================
model的字段类型介绍:
字符串
数字
时间
二进制
自增(primary_key=True)
http://www.cnblogs.com/wupeiqi/articles/5246483.html
model的字段参数介绍:

示例:




auto_now --》
在更新时
第一种 ceo update方法不适合django 更新 时间的方法 第二种可以
choices -- -》
把存入的信息保存在内存中 而不存在数据库里 在数据库中满足一个链接 让页面直接链接数据库但显示内存 外键关系
作用:django admin中显示下拉框 避免连表查询
1.

2.

3.数据库变化

4.运行run 进入django admin

blank --》 在django admin 是否可以为空
1.不写blank 直接提交

2. username可以为空 提交

显示

verbose_name--> django admin 是否可以显示中文
1.

2.

editable--> django admin 是否可以被编辑
1.

2.username消失


help_text--》django admin 提示


vaildators --》django form ,自定义错误信息
综上:

Django ORM 外键操作
不存进内存 表与表之间的关系 (基本:一对多 foreignKey)
例如:人与组关系

表示关联UserGroup表的数据
to_field 表示关联的表中所关联的字段 必须唯一 如果不加上 默认也是主键
设置默认值 是哪一个部门的
在创建列时 自动变成user_group
user_group 是一个对象 封装了uid caption ctime uptime
当获取数据时:

执行一遍 创建数据库
python manage.py makemigrations
python manage.py migrate
现在数据库有两张表

此刻数据库有两张表
UserGroup 有四列
UserInfo 有七列 包括id自增
连接关系如下:

格式如下:


----------------------
回到登录系统 外键连接操作
19.18


------------------
Django admin ORM 的外键实现增加用户

1.

2.
运行 输入orm 点击
3.
查看数据库

4.添加部门下拉框


但在数据库 添加表部门时候 ,页面并不会更改
-------------------------------
修改:
即在第一次get请求时, 就更新框
1.

2.

3.


综上:

一对多 多表连接

djangoORM 修改表结构/字段/外键操作的更多相关文章
- Oracle修改表结构字段名和字段长度
添加字段的语法:alter table tablename add (column datatype [default value][null/not null],….); 修改字段的语法:alter ...
- mysql 修改表结构以支持事务操作
修改表的类型为 INNODB 的 SQL: alter table category_ ENGINE = innodb; 查看表的类型的 SQL show table status from ...
- 在sql设计中没法修改表结构
在做练习的时候经常表没设计好,后来有要去数据库修改表结构但是没词用界面修改的时候都会提示要保存 转自http://www.57xue.com/ItemView/Sql/2016061600160.ht ...
- SQL Server 修改表结构被阻止 解决办法
在我们的程序开发中,有时候会由于需求的变化而要修改数据库中的表结构.可能是增减列,也可能是修改数据类型,或者修改列名等等.但修改表结构是个危险操作,默认情况下,当你修改表结构时,会弹出如下提示框 上图 ...
- mysql之字段的修改,添加、删除,多表关系(外键),单表详细操作(增删改)
字段的修改.添加和删除 create table tf1( id int primary key auto_increment, x int, y int ); #修改 alter table tf1 ...
- MySQ-表关系-外键-修改表结构-复制表-03
目录 前言 不合理的表结构(案例) 带来的问题 如何解决问题? 如何确定表关系? 表关系 一对多 多对多 一对一 应用场景 判断表关系最简单的语法 三种关系常见案例 如何建立表关系? 外键 forei ...
- 解决修改表结构,添加外键时出现“约束冲突”的错误
由于表结构更改,使用新建表,现有部分表需要更改外键,将引用更改到新建表的相应字段.在更改过程中,部分表出现如下错误提示: ALTER TABLE 语句与 COLUMN FOREIGN KEY 约束 ' ...
- Django学习——Django测试环境搭建、单表查询关键字、神奇的双下划线查询(范围查询)、图书管理系统表设计、外键字段操作、跨表查询理论、基于对象的跨表查询、基于双下划线的跨表查询
Django测试环境搭建 ps: 1.pycharm连接数据库都需要提前下载对应的驱动 2.自带的sqlite3对日期格式数据不敏感 如果后续业务需要使用日期辅助筛选数据那么不推荐使用sqlite3 ...
- 增加删除字段修改字段名,修改表结构,非常用SQL语句技巧总结
1.为数据表添加一个新字段 Alter TABLE [dbo].[CustomerBackupConfig] Add [Stamp] [timestamp] NULL GO 2.为数据表添加两个新字段 ...
随机推荐
- Vue v-for操作对象与数值
<!doctype html> <html lang="en"> <head id="head"> <meta cha ...
- 洛谷P4173 残缺的字符串
题目大意: 两个带通配符的字符串\(a,b\),求\(a\)在\(b\)中出现的位置 字符串长度\(\le 300000\) 考虑魔改一发\(kmp\),发现魔改不出来 于是考虑上网搜题解 然后考虑\ ...
- golang--单元测试综合实例
实例说明: (1)一个Monster结构体,字段Name,Age,Skill (2)Monster有一个Store方法,可以将一个Monster对象序列化后保存在文件中: (3)Monster有一个R ...
- python接口自动化3-发送post及其他请求
前言 发过get请求相信学习post请求也很快学会,无非就是多了传参时的类型与参数格式.在我常见的post请求中用到最多的是json格式,但也有用其它,下面将介绍常用的参数类型格式. 一.Post请求 ...
- find命令常用场景
1.查找/var目录下属主为root并且属组为mail的所有文件: find /var -user root -group mail 2.查找/usr目录下不属于root,bin,或student的文 ...
- win7 64bit安装redis
win7 64bit安装redis 1 先安装redis客户端 1.下载Redis的压缩包 https://github.com/dmajkic/redis/downloads 我下载的是redis- ...
- HDU-1760 A New Tetris Game DFS
曾经,Lele和他姐姐最喜欢,玩得最久的游戏就是俄罗斯方块(Tetris)了. 渐渐得,Lele发觉,玩这个游戏只需要手快而已,几乎不用经过大脑思考. 所以,Lele想出一个新的玩法. Lele和姐姐 ...
- LocalDB 从2017更换到2014后一直显示连接不正确解决方案
问题描述:LocalDB 版本混装后出现默认实例创建不成功 无法连接到 (LocalDB)\MSSQLLocalDB. ------------------------------其他信息: 在与 S ...
- [IDA] Oops! internal error 40343 occured.
问题描述: 解决方案: 安装 IDA 时,其路径下不要出现中文.
- 第五篇 openvslam建图与优化模块梳理
建图模块 mapping_module在初始化系统的时候进行实例化,在构建实例的时候会实例化local_map_cleaner和local_bundle_adjuster.系统启动的时候会在另外一个线 ...