Подскажите как отследить, то бишь сделать проверку, что переменная есть между тегами
Мне нужно проверить чтобы переменная {{var}}, есть между тегами {% mystyle %} {{var}}
{% endmystile %}
Сделал так
try: var=context['var'] except ValueError: msg='No var in context'
#Предположим что есть конструкция собственных тегов такого вида #внутри тега mystyle должен добавляться + к переменной #{% myapper %} # {% mystyle %} {{var}} {% endmystile %} # {% endmyapper %} @register.tag def myapper(parser,token): nodelist=parser.parse(('endmyapper',)) parser.delete_first_token() return RenderMyUpper(nodelist) class RenderMyUpper(template.Node): def __init__(self,nodelist): self.child_nodelists=nodelist def render(self, context): output=self.child_nodelists.render(context) return output @register.tag(takes_context=True) def mystyle(context,parser,token): try: tag_name=token[0] except ValueError: msg='No valid tag name' raise template.TemplateSyntaxError(msg) #Теперь проверим существование нужной переменной между тегами try: var=context['var'] except ValueError: msg='No var in context' raise template.TemplateSyntaxError(msg) return RenderMyStyle(var) class RenderMyStyle(template.NodeList): def __init__(self,var): self.var=var def render(self, context): return '+'+self.var