san*_*eep 2 python django django-templates
我想在django模板中创建一年的下拉列表.下拉列表将包含2011年的开始年份,而结束年度应为当年的5年.
例如:如果今天我看到它将显示我2011年,2012年,2013年,2017年的年份.
可以通过从views.py发送列表并在模板中循环或在forms.py中定义来完成.
但我不想在这里使用任何形式.我只需要在模板中显示它.
我怎么能在Django模板中做到这一点.
在你models.py...
import datetime
year_dropdown = []
for y in range(2011, (datetime.datetime.now().year + 5)):
year_dropdown.append((y, y))
Run Code Online (Sandbox Code Playgroud)
所以,你的领域现在可以使用year_dropdown:
year = models.IntegerField(_('year'), max_length=4, choices=year_dropdown, default=datetime.datetime.now().year)
Run Code Online (Sandbox Code Playgroud)
将当前年份设置为默认值.
如果您想要的只是模板中的值,那么请执行以下操作...
<select id="year">
{% for y in range(2011, (datetime.datetime.now().year + 5)) %}
<option value="{{ y }}">{{ y }}</option>
{% endfor %}
</select>
Run Code Online (Sandbox Code Playgroud)
有关更多详细信息,请阅读Django模板语言文档.
| 归档时间: |
|
| 查看次数: |
8509 次 |
| 最近记录: |