Как правильно передать класс enum в шаблон .HTML в django
У меня есть класс Enum, подобный этому:
models.py
.
.
class Status(Enum):
New = 1
Modified = 2
Done = 3
и я хочу передать это в html-шаблон, чтобы выполнить итерацию и использовать это.
поэтому в моем views.py я передаю его следующим образом
views.py
from models import Status
.
.
status_options = Status
return render(request, 'orders.html', {status_options':status_options})
и проблема в том, что когда я пытаюсь использовать его внутри HTML шаблона, я не получаю никаких значений
Я попробовал следующее
orders.html
{% for status in status_options %}
{{ status.name }}
{% endfor %}
Но я не получаю никакого вывода
Может ли кто-нибудь предоставить мне несколько руководств здесь, пожалуйста?
Вы передаете код
'status_options' : [ x for x in Status ]
Это список, а не вызываемый объект, поэтому вы должны иметь возможность итерации по нему в вашем шаблоне:
{% for option in status_options %}
{{ option.name }} {{option.value}}
{% endfor %}