Django models 常用字段类型


1、CharField
字符串字段,存较短的字符串,长文本要用TextField。
必须的参数:max_length 字符的最大长度
2、TextField
容量很大的文本字段。
admin中用 <textarea>多行编辑框表示该字段数据。
3、DateField
日期字段。
可选参数:
(1)auto_now:对象被保存时,自动将字段的值设置为当前时间,通常用于表示 “last-modified” 时间戳;
(2)auto_now_add:当对象首次被创建时,自动将该字段的值设置为当前时间,通常用于表示对象创建时间。
admin 中用一个文本框 <input type=”text”> 来表示该字段数据(附带一个 JavaScript 日历和一个”Today”快捷按键。)
4、DateTimeField
类似 DateField 支持同样的参数选项。
5、TimeField
时间字段,类似于 DateField 和 DateTimeField。
6、FloatField
浮点型字段。
必须的参数:
(1)max_digits:总位数(不包括小数点和符号)
(2)decimal_places:小数位数。
例:要保存最大值为 999 (小数点后保存2位),你要这样定义字段:models.FloatField(…,max_digits=5, decimal_places=2)
7、IntegerField
保存一个整数。
8、FileField
文件上传字段。
必须的参数:upload_to,用于保存上载文件的本地文件系统路径。这个路径必须包含 strftime formatting,该格式将被上载文件的 date/time 替换。
在一个 model 中使用 FileField 或 ImageField 需要以下步骤:
(1)在settings 文件中, 定义一个完整路径给 MEDIA_ROOT 以便让 Django在此处保存上传文件。 (出于性能考虑,这些文件并不保存到数据库。)
(2)定义 MEDIA_URL 作为该目录的公共 URL。 要确保该目录对 WEB 服务器用户帐号是可写的。
(3)在model 中添加 FileField 或 ImageField,并确保定义了 upload_to 选项,以告诉 Django 使用 MEDIA_ROOT 的哪个子目录保存上传文件。
(4)数据库中要保存的只是文件的路径(相对于 MEDIA_ROOT)。
举例来说,如果ImageField 叫作 mug_shot,你就可以在模板中以 {{ object.get_mug_shot_url }} 这样的方式得到图像的绝对路径。
9、ImageField
类似 FileField,不过要校验上传对象是否是一个合法图片。
可选参数:
(1)height_field
(2)width_field
如果提供这两个参数,则图片将按提供的高度和宽度规格保存。该字段要求 Python Imaging 库。
10、IPAddressField
一个字符串形式的 IP 地址。如“127.0.0.1″)
11、URLField
用于保存 URL。 若 verify_exists 参数为 True (默认),给定的 URL 会预先检查是否存在(即URL是否被有效装入且没有返回404响应)。

 

posted @ 2017-12-28 10:36  summyfly  阅读(203)  评论(0编辑  收藏  举报