我在Django中有自定义模板过滤器,我可以访问模板过滤器中的其他模板变量。
int[] indexs=table_name.getSelectedRows();
//all the selected row are here no need to go throw
//all your rows to see if they are selected or not
for(int index_row:rows){
//you code here
}
答案 0 :(得分:1)
解决方案是将标记更改为模板标记而不是过滤器 - 过滤器应该是原子的并且与上下文无关。这样的事情应该有效:
# takes_context allows you access to the outer template context
@register.simple_tag(takes_context=True)
def my_tag(context, obj, val):
lookup_dict = context['lookup_obj']
# Do something with lookup_dict, obj, and val
# Return something that will be rendered in the template
return ...
然后在你的模板中:
{% for a in my_list %}
{% my_tag a 1 %}
{% endfor %}
请注意,现在这是一个标记({%
)而不是变量({{
)。