Django 多选复选框
我有一个对象列表,每个对象都有一个复选框,用户可以选择多个复选框。这个列表是通过查询得到的。
我该如何在界面上标记哪些复选框已经被选中了呢?在模板语言中似乎没有“in”这样的操作符。
我想要的效果大概是这样的:
<input {% if id in selectedIds %}checked {% endif %}>
1 个回答
0
你可以使用一个模板标签,就像这个代码片段中的评论所提到的那样:
http://www.djangosnippets.org/snippets/177/
@register.filter
def in_list(value,arg):
return value in arg
在模板中使用:
The item is
{% if item|in_list:list %}
in list
{% else %}
not in list
{% endif %}
虽然不是特别聪明,但它能正常工作。