Тег шаблона Django показывает значение, а не ключ
Возможно, это простой ответ, но я не могу найти его в документации.
Как отобразить значение поля выбора в тегах шаблона? Использование .value не сработало, как я думал.
Сейчас он просто отображает Key:
user_update
когда я вызываю этот тег template на моем html:
{{ ticket.current_status }}
из моего forms.py:
current_status = ChoiceField(
label = "",
choices = STATUS_CHOICES,
widget = Select(attrs={
'class': 'h-10 flex flex-row justify-items-left',
})
)
и мой views.py:
class StaffSupportTicketUpdateView(LoginRequiredMixin, UserPassesTestMixin, UpdateView):
...
def get_context_data(self, **kwargs):
context = super(StaffSupportTicketUpdateView, self).get_context_data(**kwargs)
context['search'] = SearchForm()
context['ticket'] = self.get_object()
return context
и мой models.py:
class SupportTicketModel(Model):
...
current_status = CharField(default='new_ticket', choices=STATUS_CHOICES, max_length=35)
...
Наконец, мои STATUS_CHOICES
STATUS_CHOICES = (
('new_ticket', 'New ticket submitted'),
('user_update', 'User updated ticket'),
('need_info', "Need more information"),
('completed', 'Completed'),
)
Используйте метод get_FOO_display
, который динамически создается для вашего поля, поскольку у него есть выбор, он вернет человекочитаемое значение поля
{{ ticket.get_current_status_display }}