Django自学笔记 4-2 各种Field(字段)说明

————总目录——前言——框架版本————

======================= 大爽歌作,made by big shuang =======================

参考:https://docs.djangoproject.com/en/2.2/ref/models/fields/

二、各种Field(字段)说明

一般来说,Field不需要另行导入,因为导入models就够了,Field类都在models

from django.db import models

1 基类django.db.models.Field

django.db.models.Field是所有Field类的基类,以下简称Field
Field的常见属性(建立实例时可用)

  • null: 是否能为空,默认为False
  • default: 默认值,默认为False
  • primary_key: 是否为主键,默认为False
    如果没有为模型中的任何字段指定primary_key=True,Django将自动添加一个AutoField(id)来保存主键。
    primary_key=True表示null=False,unique=True。一个Model上只允许有一个主键。
    主键字段是只读的。如果更改现有对象上主键的值,然后保存它,将在旧对象的旁边创建一个新对象。
  • unique: 是否唯一,默认为False
  • choices: 给Field指定可以选择的值(比如性别字段往往需要指定男女),默认为None(即不指定)
    例子:
class Person(models.Model):
    gender = (
    	# 每个元组中的第一个元素是要在模型上设置的实际值,第二个元素是用户看到的值。
        ('male', '男'),
        ('female', '女'),
    )

    sex = models.CharField(max_length=32, choices=gender, default='男')
  • help_text: 与表单部件一起显示的辅助信息文本,常常用于提示字段输入格式(可以写HTML)
    例子
help_text="Please use the following format: <em>YYYY-MM-DD</em>."

2 常用类

CharField
最常用的,字符串类型字段
额外的必需参数:
max_length: 字段的最大长度(字符)。
补充: max_length最好不要超过255,参考:database backend notes。对于大量文本请使用TextField
IntegerField
整数类型字段
补充:从-2147483648到2147483647的值在Django支持的所有数据库中都是安全的。

3 其他类

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章