博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Django models中关于blank与null
阅读量:4617 次
发布时间:2019-06-09

本文共 844 字,大约阅读时间需要 2 分钟。

建立一个简易Model

class Person(models.Model): GENDER_CHOICES=( (1,'Male'), (2,'Female'), ) name=models.CharField(max_length=30,unique=True,verbose_name='姓 名') birthday=models.DateField(blank=True,null=True) gender=models.IntegerField(choices=GENDER_CHOICES) account=models.IntegerField(default=0)  

blank

设置为True时,字段可以为空。设置为False时,字段是必须填写的。字符型字段CharField和TextField是用空字符串来存储空值的。

如果为True,字段允许为空,默认不允许。

null

设置为True时,django用Null来存储空值。日期型、时间型和数字型字段不接受空字符串。所以设置IntegerField,DateTimeField型字段可以为空时,需要将blank,null均设为True。

CharField时,可填空白值  '',这时html上显示为空白,IntegerField,DateTimeField等不允许值为 ''

 

如果为True,空值将会被存储为NULL,默认为False。

如果想设置BooleanField为空时可以选用NullBooleanField型字段。

一句话概括

  • null 是针对数据库而言,如果 null=True, 表示数据库的该字段可以为空。
  • blank 是针对表单的,如果 blank=True,表示你的表单填写该字段的时候可以不填,比如 admin 界面下增加 model 一条记录的时候。直观的看到就是该字段不是粗体

 

转载于:https://www.cnblogs.com/linkenpark/p/7484542.html

你可能感兴趣的文章
sql数据库查询
查看>>
云计算技能图谱
查看>>
委托、Lambda表达式和事件
查看>>
typecho模板制作代码收集
查看>>
Python学习笔记4:集合方法
查看>>
elasticsearch的监控脚本
查看>>
你还在为使用P/Invoke时,写不出win32 api对应的C#声明而犯愁吗?
查看>>
msbuild property metadata会overwrite msbuild task中的properties
查看>>
python系列前期笔记
查看>>
Android -- sqlite数据库随apk发布
查看>>
Android -- Fragment
查看>>
前端性能优化和规范
查看>>
python 之进程篇
查看>>
框架编程之路一
查看>>
Verilog学习----运算符、结构说明语句
查看>>
python 中的socket
查看>>
ASP.NET + VB.NET + SQL小网站程序
查看>>
Windows Media Player 键盘快捷键
查看>>
C++代码统计工具
查看>>
需求分析报告
查看>>