get_% field% _display без экземпляра - PullRequest
1 голос
/ 14 марта 2019

У меня есть такая модель

class Item(models.Model):
    STATUS_VALID = 1
    STATUS_INVALID = 2
    STATUS_UNKNOWN = 3

    STATUS_CHOICES = (
        (STATUS_VALID, _("Valid")),
        (STATUS_INVALID, _("Invalid")),
        (STATUS_UNKNOWN, _("Unknown")),
    )

    status = models.PositiveSmallIntegerField(choices=STATUS_CHOICES, default=STATUS_UNKNOWN)

Я уже знаю, что могу использовать instance.get_status_display() для получения строкового значения для экземпляра, но как получить это значение без экземпляра, я имею в виду что-то вроде этого

Item.get_status_display(Item.STATUS_VALID)

1 Ответ

2 голосов
/ 14 марта 2019

Как я вижу, простой способ: преобразовать STATUS_CHOICES в dict и получить значение, например:

dict(Item.STATUS_CHOICES).get(Item.STATUS_VALID)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...