1. BooleanField布尔值类型。默认值是None。在HTML表单中体现为CheckboxInput标签。
如果要接收null值,请使用NullBooleanField。
2. DateField`class DateField(auto_now=False, auto_now_add=False, **options)`日期类型。
一个Python中的datetime.date的实例。在HTML中表现为TextInput标签。
在admin后台中,Django会帮你自动添加一个JS的日历表和一个“Today”快捷方式,以及附加的日期合法性验证。
两个重要参数:(参数互斥,不能共存)`auto_now`:每当对象被保存时将字段设为当前日期,常用于保存最后修改时间。`auto_now_add`:每当对象被创建时,设为当前日期,常用于保存创建日期(注意,它是不可修改的)。
设置上面两个参数就相当于给field添加了`editable=False`和`blank=True`属性。
如果想具有修改属性,请用default参数。例子:`pub_time = models.DateField(auto_now_add=True)`,自动添加发布时间。
3.EmailField邮箱类型,默认max_length最大长度254位。
使用这个字段的好处是,可以使用DJango内置的EmailValidator进行邮箱地址合法性验证。
4.FileField`class FileField(upload_to=None, max_length=100, **options)`上传文件类型,后面单独介绍。
5.ImageField图像类型,后面单独介绍。
6.IntegerField整数类型,最常用的字段之一。取值范围-2147483648到2147483647。在HTML中表现为NumberInput标签。
7.GenericIPAddressField`class GenericIPAddressField(protocol='both', unpack_ipv4=False, **options)[source]`,IPV4或者IPV6地址,字符串形式,例如`192.0.2.30或者2a02:42fe::4`在HTML中表现为TextInput标签。参数`protocol`默认值为‘both’,可选‘IPv4’或者‘IPv6’,表示你的IP地址类型。
8.extField大量文本内容,在HTML中表现为Textarea标签,最常用的字段类型之一!如果你为它设置一个max_length参数,那么在前端页面中会受到输入字符数量限制,然而在模型和数据库层面却不受影响。只有CharField才能同时作用于两者。
9.URLField一个用于保存URL地址的字符串类型,默认最大长度200。
10.UUIDField用于保存通用唯一识别码(Universally Unique Identifier)的字段。使用Python的UUID类。在PostgreSQL数据库中保存为uuid类型,其它数据库中为char(32)。这个字段是自增主键的最佳替代品,后面有例子展示。