Как использовать get_FOO_display () для доступа к необработанной модели в Django - PullRequest
0 голосов
/ 01 мая 2020

Я новичок в программировании, и я хотел бы получить доступ к функции get_FOO_display() для приведенной ниже модели, прежде чем иметь какие-либо объекты (записи в базе данных). Я знаю, что могу использовать SubOrder.EXTRA_CHOICES и SubOrder._meta.get_field(), но в обоих случаях я получаю список возвращенных кортежей (M, 'Mushrooms'), (P, 'Peppers'), etc.

Как я могу получить Mushrooms, Peppers, etc. в виде списка?

Я пытался SubOrder._meta.get_extra_display(), но я получаю 'Options' object has no attribute 'get_extra_display': *1012* - Django Model _meta API, похоже, не позволяет этого. Моя модель ниже:

class SubOrder(Sub):
  item_id = models.ForeignKey(Item, on_delete=models.CASCADE, primary_key=True, related_name="sub_item_id")
  extra_count = models.IntegerField(default=0, validators=[MaxValueValidator(4), MinValueValidator(0)])
  MUSHIES = 'M'
  PEPPERS = 'P'
  ONIONS = 'O'
  XTRCHEESE = 'C'
  EXTRA_CHOICES = ((MUSHIES, 'Mushrooms'), (PEPPERS, 'Peppers'), (ONIONS, 'Onions'), (XTRCHEESE, 'Extra Cheese'),)
  extra = models.CharField(max_length=1, choices=EXTRA_CHOICES, blank=True)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...