django - 从模板向 Django 视图函数传递值
问题描述
{% for key,value in ls.items %}
{% if value == "1" %}
<form id="myForm" action="/data_display/" method="post">
<input type="hidden" name="date_selected" value= {{ key }}>
<a href="#" onclick="document.getElementById('myForm').submit();"><font size="+1">{{ key }}</font>><br>available</a>
{% csrf_token %}
</form>
{% else %}
<p>
<font> {{key}} </font></br>
not available
</p>
{% endif %}
{% endfor %}
这里,“ls”是字典。我想将“密钥”传递给 Django 视图函数。输入标记中的值在每个 for 循环期间确实采用不同的键值,但是当我单击链接时通过时,它只传递第一个元素的键。
例如,假设我的字典是:
{'2020_01_01': '1', '2020_01_02': '1', '2020_01_03': '0', '2020_01_04': '1', '2020_01_05': '0', '2020_01_06': '0', '2020_01_07': '0', '2020_01_08': '1', '2020_01_09': '0'}
因此,当我单击任何链接“2020_01_01,2020_01_02,2020_01_04,2020_01_08”时,每次只有 2020_01_01 键传递给视图功能。但是我希望每当我单击任何其他链接(例如 2020_01_02)时,2020_01_02 都应该传递视图功能。
解决方案
如果您在 dict 值中采用 int ,则无需显式比较并使用更多pythonic方式,只需尝试以下操作:
{% for key,value in ls.items %}
{% if value %}
<form id="myForm" action="/data_display/" method="post">
<input type="hidden" name="date_selected" value= {{ key }}>
<a href="#" onclick="document.getElementById('myForm').submit();">{{ key }} available</a>
{% csrf_token %}
</form>
{% else %}
<p>
<font> {{key}} </font></br>
not available
</p>
{% endif %}
{% endfor %}
我希望这行得通!
推荐阅读
- rest - 微服务 - 在前端应用程序中处理异步数据创建
- java - 我想知道这意味着“数据类型的实际大小取决于实现”。
- javascript - 如何从 json 创建经度和纬度的服务返回值?
- python - 如何在类中创建另一个对象
- python - Concat DataFarme 而不是打印(Python/for 循环)
- ios - 使用“UICollectionViewCompositionalLayout”时如何检测正交滚动事件?
- winapi - PEB 中的 ImageBaseAddress 错误
- android - 有意图的 setAction() 函数有什么用
- sdl - 我应该如何使用 SDL2 在 Wayland 上支持 GNOME?
- python - 多项式回归绘图问题