【问题标题】:Is it possible to create status choice with a model?是否可以使用模型创建状态选择?
【发布时间】:2020-08-06 13:44:21
【问题描述】:

我有我的model.py:

class Example(models.Model):
      STATUS_CHOICE = (
              ('status1', 'status1'),
              ('status2', 'status2'),
          )
      field= models.CharField(max_length=10, choices=STATUS_CHOICE)
      .

但我想知道是否有可能使用模型创建我的 STATUS_CHOICE,这样客户可以根据需要创建状态。

【问题讨论】:

    标签: django django-models django-rest-framework django-forms django-views


    【解决方案1】:

    确实如此。这将是 Status 模型的 ForeignKey。

    class Status(models.Model):
          slug = models.SlugField(unique=True)
          title = models.TextField()
    
    
    class Example(models.Model):
          status = models.ForeignKey(Status)
    
    • 您可能希望迁移创建初始状态,除非所有这些状态都应该是用户定义的。
    • 您可能希望在 DRF 中使用 SlugRelatedField(或称为什么),因此用户可以只发布 {"status": "foo"},而不是 {"status": 1} 或任何碰巧是 foo 状态的主键。

    【讨论】:

    • 你能举个例子更好地解释一下吗?
    • 添加了一个例子。
    猜你喜欢
    • 2020-08-06
    • 1970-01-01
    • 1970-01-01
    • 2021-03-11
    • 1970-01-01
    • 2018-09-27
    • 1970-01-01
    • 2011-07-10
    • 1970-01-01
    相关资源
    最近更新 更多