如何设置默认的STATUSES选项?

class Order(models.Model):
    STATUSES = (
        (u'E', u'Expected'),
        (u'S', u'Sent'),
        (u'F', u'Finished'),
    )

    status = models.CharField(max_length=2, null=True, choices=STATUSES)

推荐答案

status = models.CharField(max_length=2, null=True, choices=STATUSES, default='E')

或者要避免在状态更改时设置无效的默认值,请执行以下操作:

status = models.CharField(max_length=2, null=True, choices=STATUSES, default=STATUSES[0][0])

Django相关问答推荐

Django、htmx删除记录并更新

Django显示交叉表格

创建用户/将用户登录到客户端服务器的标准OAuth/OIDC流程是什么?

一次请求中更新整个Django模型

获取 Django Rest API 的第一个和最后一个相关对象

防止 Django 从表单集中保存特定表单

使用 Python/Django 上传大文件

使用 Vagrant 进行端口转发时连接重置

直接在模型类上使用 Django 管理器与静态方法

AttributeError:'Manager'对象在Django中没有属性'get_by_natural_key'错误?

Django 密码以什么格式存储在数据库中?

django - 如何在验证之前处理/清理字段

可以在 github 页面上托管 django 站点吗?

django - 如何使翻译工作?

django 表单为关键字参数获取了多个值

如何在 Django 中触发 500 错误?

Django - 配置不当:模块django.contrib.auth.middleware

Django 模型:delete() 未触发

Django Rest 框架 ImageField

如何在 Django 中创建一个非空的 CharField?