templatetag中for循环中的Django模板访问值

templatetag中for循环中的Django模板访问值,django,django-templates,Django,Django Templates,长话短说,我很好奇是否有任何方法可以将for循环中obj的值拉到自定义模板标记 我现在有 {% for OBJ in OBJ_LIST %} {% TAG 'string_value' OBJ %} {% endfor %} 诀窍是我得到“OBJ” 这两种情况下 obj = template.Variable(objname) obj = template.resolve_variable(objname, context) 不在for循环中注册变量 好奇是否有任何类型的工作?是的,有一种方

长话短说,我很好奇是否有任何方法可以将for循环中obj的值拉到自定义模板标记

我现在有

{% for OBJ in OBJ_LIST %}
{% TAG 'string_value' OBJ %}
{% endfor %}
诀窍是我得到“OBJ”

这两种情况下

obj = template.Variable(objname)
obj = template.resolve_variable(objname, context)
不在for循环中注册变量


好奇是否有任何类型的工作?

是的,有一种方法,我的标签在循环中工作良好。我认为你的模板标签中有一个错误。但我建议使用一些现有框架来创建模板标记(或其他),而不是调试。它将是干燥的,经过很好的测试,你不会犯这样的错误

澄清一下,如果你把它从循环中拉出来,它会起作用吗?是的,当在上下文中声明了一个var时,它可以正常工作——它只传递var的名称,这样它就可以得到字符串“modelInstance”vs modelInstance——图一个简单的方法是查看对象包,但尝试在睡眠数小时后将其保存在DryReview代码中,并设法使其正常工作,修补了这么多不确定我的具体问题在哪里。标记在for循环之外工作得很好-尽管在内部,如果它是一个新的变量,没有在上下文中声明,什么都不会出现-也就是说,您发布的链接提供了我想要的-谢谢you@yugi我有一部分想对你的评论投赞成票,只是因为你使用了酷豆,但我也同意。