Существуют ли другие способы введения нового свойства / метода в переменную в шаблоне django? - PullRequest
0 голосов
/ 20 марта 2012

Я смотрю на один из шаблонов часового, и он выдает мне ошибку INVALID CONTEXT VARIABLE: MESSAGE.GET_STATUS_DISPLAY. Шаблон выглядит так:

<span class="status status-{{ message.status }}">
    {{ message.get_status_display }}
</span>

Django docs говорит, что когда он встречает пунктирное имя после такой переменной, как message.get_status_display, он разрешит его в следующем порядке:

  1. Словарь поиска
  2. Поиск атрибутов
  3. Метод поиска
  4. Поиск по индексу списка

Я просмотрел исходный код и обнаружил, что message является объектом модели и не содержит ничего похожего на get_status_display. Он, однако, имеет message.status. Может кто-нибудь дать подсказки о том, как осуществляется отправка на get_status_display?

1 Ответ

2 голосов
/ 20 марта 2012

status имеет choices, поэтому get_status_display() равно , созданному ORM .

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