
modles.py创建表
ORM字段介绍
Djano提供了很多字段类型,比如URL/Email/IP/ 但是mysql数据没有这些类型,这类型存储到数据库上本质是字符串数据类型,其主要目的是为了封装底层SQL语句;
1、字符串类(以下都是在数据库中本质都是字符串数据类型,此类字段只是在Django自带的admin中生效)
name=models.CharField(max_length=32)
1 2 3 4 5 6 7 8 9 |
|
扩展
models.CharField 对应的是MySQL的varchar数据类型。
char 和 varchar的区别 :
char和varchar的共同点是存储数据的长度,不能超过max_length限制,
不同点是varchar根据数据实际长度存储,char按指定max_length()存储数据;所有前者更节省硬盘空间;
相关推荐:《Python视频教程》
2、时间字段
1 2 |
|
3、数字字段
(max_digits=30,decimal_places=10)总长度30小数位 10位)
数字:
1 2 3 |
|
4、枚举字段
1 2 3 4 5 6 |
|
扩展
在数据库存储枚举类型,比外键有什么优势?
1、无需连表查询性能低,省硬盘空间(选项不固定时用外键)
2、在modle文件里不能动态增加(选项一成不变用Django的choice)
其他字段
1 2 3 4 5 6 7 8 9 10 11 12 |
|