1、CharField
用来存储从小到很大各种长度的字符串的地方,必须接收一个参数max_length=xx
用来限定字符串的最大长度。
例如:
name = models.CharField(max_length=20, verbose_name='姓名', default='')
2、choice
它是一个可迭代的结构(比如,列表或是元组),由可迭代的二元组组成(比如[(A, B), (A, B) …]),用来给这个字段提供选择项。如果设置了 choices ,默认表格样式就会显示选择框,而不是标准的文本框,而且这个选择框的选项就是 choices 中的元组。
每个元组中的第一个元素,是存储在数据库中的值;第二个元素是该选项更易理解的描述。
gender = models.CharField(max_length=10, choices=(('male', '男'), ('female', '女')), default='male', verbose_name='性别')
3、DateField
用来表示日期的。
birthday = models.DateField(verbose_name='生日', null=True, blank=True)
一般允许该字段为空时,需要同时写上null=True, blank=True。
4、DateTimeField
class DateTimeField([auto_now=False, auto_now_add=False, **options])¶
它是通过Python datetime.datetime实例表示的日期和时间. 携带了跟DateField一样的额外参数.
该字段默认对应的表单控件是一个单个的TextInput(单文本输入框). 管理界面是使用两个带有 JavaScript控件的 TextInput 文本框.
一般用在记录某字段的添加时间。
from datetime import datetime
add_time = models.DateTimeField(default=datetime.now, verbose_name='添加时间')
5、ImageField
class ImageField([upload_to=None, height_field=None, width_field=None, max_length=100, **options])
ImageField字段需要调用Pillow 库.
ImageField会创建在你的数据库中 和 varchar 一样,默认最大长度为100和其他字段一样, 你可以使用max_length 参数来设置默认文件最大值.
image = models.ImageField(max_length=100, upload_to='users/image/%Y/%m', default='users/image/default_big_14.png', verbose_name='头像')
6、IntegerField
class IntegerField([**options])¶
一个整数。在Django所支持的所有数据库中,从 -2147483648 到 2147483647 范围内的值是合法的。默认的表单输入工具是TextInput.