django创建各个字段详细叙述
1. 建表要点:
1. 建表时需要在app中的models.py文件中使用类的方法建表
2. 类需要继承django的model.Model方法
3. 最好表前面是名字后面命名加个Model
4. 最好给每一个表的字段都加一个默认,default
5. 每个字段都尽量给一个verbosename这个是用来在后端管理页面上展示字段的名称。
6. null默认为False,在写入空值的时候是空字符串还是以空值作为数据
7. black默认为False,标识该字段默认为空,允许存在空值(null和black在不同字段会有不同的效果)
CharField:
1. 每一个Charfield都要必须没一个max_length
2. 如果是固定多个选项可以使用choice的方法
这个元组中,第一个1才是数据库中存的数据,后面实际对应的是后台管理中映射的标签。
TextField:
实际就是不限长度的CharField,一般用于文本描述,内容什么的
BooleanField:
1. 一般只有两种选择的字段用它,1 是, 0 否,True, False
IntergerField:
正常的整数型,数值在-2147483648余2147483647之间用这个字段
SmallIntegerField:
-32768, 32767之间
BigIntegerField:
-923372036854775808, 923372036854775807
他们三个整数型的:
FloatField:
带小数点的字符,咋样撸都可,没那么多要去
DecimalField:
双精度浮点数,这个比单精度的多了很多限制
1. max_digits数字最大位数
2. decimal_places小数点的限制位数
DataField:
表示显示的是日期
DataTimeField:
显示日期和具体时间
auto_now这个内置的方法可以自动更新保存数据的时间,一般用于数据更新之后的记录。
auto_now_add记录数据入库的时间
TimeFeild:
就显示时间
URLField:
其实也是CharField实际就是在这基础上加一些验证机制
EmailField:
同上
ImageField:
这个比较特殊,因为他设置的是图片类的数据,数据库中不存图片,所以需要在django中配置一下图片存储
1. 在settings.py里面配置媒体的路由和存储文件夹:
2. 在该字段加入upload_to他会自动的和配置的路由匹配起来,
3. 在这里上传了图片后,你会发现django在项目目中自动创建了文件夹和存储了图片:
miedia_file:配置路由时候的内个文件夹名称
person_image:这个字段upload的时候设置名称
FileField:
这个与刚刚的图片基本一样。只不过这个是传文件的.
同时这两个upload自带正则表达式,如:
直接使用这种方法就可以直接给文件命名了。效果如下: