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.
综上:
一对多 多表连接