Можно ли создать выбор статуса с моделью? - PullRequest
1 голос
/ 23 апреля 2020

У меня есть свой model.py:

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

Но я хочу знать, возможно ли иметь возможность создать мой STATUS_CHOICE с моделью, таким образом, клиент может создать статус, как вы хочу.

1 Ответ

1 голос
/ 23 апреля 2020

Это, безусловно, так. Это будет ForeignKey для модели Status.

class Status(models.Model):
      slug = models.SlugField(unique=True)
      title = models.TextField()


class Example(models.Model):
      status = models.ForeignKey(Status)
  • Возможно, вы захотите выполнить миграцию, чтобы создать начальные статусы, если только все они не должны быть определены пользователем.
  • Возможно, вы захотите использовать SlugRelatedField (или так называемый) в DRF, чтобы пользователи могли просто публиковать {"status": "foo"}, а не {"status": 1} или что-то еще, что является первичным ключом состояния foo.
...