在django模板中将str转换为int
Convert str to int in django template
我需要将日期日期转换为 int 以与模板中的其他值进行比较。
像这样:
views.py
def userEdit(request):
userdata = user.objects.get(id=request.session['user_id'])
dic.update({'userdata':userdata, 'dayrange': range(1,32)})
return render(request, 'my_app/userEdit.html', dic)
my_app/userEdit.html
<select name="day">
{% for i in dayrange %}
{% if i == userdata.birth_date|date:"d" %}
<option value="{{ i }}" selected>{{ i }}</option>
{% else %}
<option value="{{ i }}">{{ i }}</option>
{% endif %}
{% endfor %}
</select>
我需要将 userdata.birth_date|date:"d" 转换为 int,然后在 for 循环中与 "i" 变量进行比较。请帮助
你试过了吗:
{% if i == userdata.birth_date.day %}
<option value="{{ i }}" selected>{{ i }}</option>
您可以使用参数为 0 的 add
过滤器将其强制转换为整数,例如
{% if i == userdata.birth_date|date:"d"|add:0 %}
我需要将日期日期转换为 int 以与模板中的其他值进行比较。
像这样:
views.py
def userEdit(request):
userdata = user.objects.get(id=request.session['user_id'])
dic.update({'userdata':userdata, 'dayrange': range(1,32)})
return render(request, 'my_app/userEdit.html', dic)
my_app/userEdit.html
<select name="day">
{% for i in dayrange %}
{% if i == userdata.birth_date|date:"d" %}
<option value="{{ i }}" selected>{{ i }}</option>
{% else %}
<option value="{{ i }}">{{ i }}</option>
{% endif %}
{% endfor %}
</select>
我需要将 userdata.birth_date|date:"d" 转换为 int,然后在 for 循环中与 "i" 变量进行比较。请帮助
你试过了吗:
{% if i == userdata.birth_date.day %}
<option value="{{ i }}" selected>{{ i }}</option>
您可以使用参数为 0 的 add
过滤器将其强制转换为整数,例如
{% if i == userdata.birth_date|date:"d"|add:0 %}