사용자 정의 필터를 사용하여 jinja2에서 파이썬 함수를 호출 할 수 있지만 하나 이상의 매개 변수가있는 함수 만 호출 할 수 있습니다. 다음에서는 변수가 아닌 함수로 ctest를 처리하기 위해 junk 매개 변수를 전달해야합니다.jinja2 템플릿에서 매개 변수없이 파이썬 함수를 호출하는 방법
{{ ctest() }}
을 호출해도 작동하지 않습니다.
이것을 강제로 호출하는 다른 방법이 있습니까? 아니면 다른 접근 방법을 사용해야합니까?
코드 :
def ctest(stuff):
return "yeah!"
template_env = jinja2.Environment (loader = jinja2.FileSystemLoader(template_file_root))
#custom filters
template_env.filters['ctest'] = ctest
템플릿 :
Working? {{ junk|ctest }}
출력 :
working? yeah!
가능한 중복 [jinja2에서 파이썬 함수를 호출 (http://stackoverflow.com/questions/6036082/call-a-python-function-from-jinja2) – geoffspear
게시하기 전에이 질문을 살펴 보았지만 매개 변수없이 템플릿에서 필터를 호출하는 방법은 설명하지 않았습니다. 그것은 내가 이미에있는 지점에 도달하는 방법을 설명합니다. – chrisst
두 번째 답변보기 :'{{clever_function()}} ' – geoffspear