如何正确地将枚举 class 传递给 django 中的 .HTML 模板
How to properly pass an enum class to the .HTML template in django
我有一个像这样的枚举 class:
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 %}
我有一个像这样的枚举 class:
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 %}