История изменнения вопроса «Как написать расширение для jinja2?»
-
Как написать расширение для jinja2?
Хочу научиться разрабатывать расширения для jinja2. По какому принципу их создавать? Пока осилил такой код:
class MediaExtension(Extension): tags = ['media'] def parse(self, parser): stream = parser.stream tag = stream.next() args = [parser.parse_expression()] if parser.stream.skip_if('comma'): args.append(parser.parse_expression()) else: args.append(nodes.Const(None)) print args lineno = stream.current.lineno return nodes.CallBlock( self.call_method('_media', args),[], [], None).set_lineno(lineno) def _media(self, path, params='', caller=None): print caller print "test2" return u"test"Пока получаю такую ошибку: 'NoneType' object is not iterable
Не пойму вот какой момент. Что должен возвращать метод parser? Что должен принимать и возвращать _media?