Django 经过 models 实现数据库的建立、修改、删除等操做,本文为模型中通常经常使用的类型的清单,便于查询和使用:git
CharField.max_length:字符的最大长度,django会根据这个参数在数据库层和校验层限制该字段所容许的最大字符数。正则表达式
auto_now:当对象被保存时,自动将该字段的值设置为当前时间.一般用于表示 “last-modified” 时间戳;
auto_now_add:当对象首次被建立时,自动将该字段的值设置为当前时间.一般用于表示对象建立时间。数据库
path:必需参数,一个目录的绝对文件系统路径。 FilePathField 据此获得可选项目。 Example: “/home/p_w_picpaths”;
match:可选参数, 一个正则表达式, 做为一个字符串, FilePathField 将使用它过滤文件名。 注意这个正则表达式只会应用到 base filename 而不是路径全名。 Example: “foo。*\。txt^”, 将匹配文件 foo23.txt 却不匹配 bar.txt 或 foo23.gif;
recursive:可选参数, 是否包括 path 下所有子目录,True 或 False,默认值为 False。django
match 仅应用于 base filename, 而不是路径全名。 如:FilePathField(path=”/home/p_w_picpaths”, match=”foo.*”, recursive=True)…会匹配 /home/p_w_picpaths/foo.gif 而不匹配 /home/p_w_picpaths/foo/bar.gif服务器
max_digits:总位数(不包括小数点和符号)
decimal_places:小数位数。如:要保存最大值为 999 (小数点后保存2位),你要这样定义字段:models.FloatField(…,max_digits=5, decimal_places=2),要保存最大值一百万(小数点后保存10位)的话,你要这样定义:models.FloatField(…,max_digits=19, decimal_places=10)ide
正小整型字段,相似 PositiveIntegerField, 取值范围较小(数据库相关)SlugField“Slug” 是一个报纸术语。 slug 是某个东西的小小标记(短签), 只包含字母,数字,下划线和连字符。它们一般用于URLs。 若你使用 Django 开发版本,你能够指定 maxlength。 若 maxlength 未指定, Django 会使用默认长度: 50,它接受一个额外的参数:函数
prepopulate_from: 来源于slug的自动预置列表工具
schema_path:校验文本的 RelaxNG schema 的文件系统路径。性能
null :缺省设置为false.一般不将其用于字符型字段上,好比CharField,TextField上.字符型字段若是没有值会返回空字符串。url
blank:该字段是否能够为空。若是为假,则必须有值
choices:一个用来选择值的2维元组。第一个值是实际存储的值,第二个用来方便进行选择。如SEX_CHOICES= ((‘F’,'Female’),(‘M’,'Male’),)
core:db_column,db_index 若是为真将为此字段建立索引
default:设定缺省值
editable:若是为假,admin模式下将不能改写。缺省为真
help_text:admin模式下帮助文档
primary_key:设置主键,若是没有设置django建立表时会自动加上:
1 |
id = meta.AutoField( 'ID' , primary_key = True ) |
2 |
primary_key = True implies blank = False , null = False and unique = True . Only one primary key is allowed on an object . |
radio_admin:用于admin模式下将select转换为radio显示。只用于ForeignKey或者设置了choices
unique:数据惟一
unique_for_date:日期惟一,以下例中系统将不容许title和pub_date两个都相同的数据重复出现
title = meta.CharField(maxlength=30,unique_for_date=’pub_date’)
unique_for_month / unique_for_year:用法同上
validator_list:有效性检查。非有效产生 django.core.validators.ValidationError 错误