Skip to content

Instantly share code, notes, and snippets.

@lost-theory
Created October 21, 2012 04:29
Show Gist options
  • Star 56 You must be signed in to star a gist
  • Fork 5 You must be signed in to fork a gist
  • Save lost-theory/3925738 to your computer and use it in GitHub Desktop.
Save lost-theory/3925738 to your computer and use it in GitHub Desktop.
different delimiters in jinja2 + flask
from flask import Flask, render_template_string, request
class CustomFlask(Flask):
jinja_options = Flask.jinja_options.copy()
jinja_options.update(dict(
block_start_string='<%',
block_end_string='%>',
variable_start_string='%%',
variable_end_string='%%',
comment_start_string='<#',
comment_end_string='#>',
))
app = CustomFlask(__name__)
app.config['DEBUG'] = True
@app.route("/")
def index():
template = """
<# this is a jinja2 comment #>
<% block stuff %>
<h1>Jinja2</h1>
<% for i in range(5) %>
<p>Hello %% name %%!</p>
<% endfor %>
<h1>Mustache</h1>
<p>{{something}}</p>
{{#items}}
{{#first}}
<li><strong>{{name}}</strong></li>
{{/first}}
{{#link}}
<li><a href="{{url}}">{{name}}</a></li>
{{/link}}
{{/items}}
<% endblock %>
"""
return render_template_string(template, name=request.values.get('name', 'world'))
if __name__ == "__main__":
app.run(use_debugger=True, use_reloader=True)
@darkdarkfruit
Copy link

very nice

@howardhamilton
Copy link

Like it! Nice way of getting variable delimiters in different frameworks to play with each other.

@misaelnieto
Copy link

¡Beautiful! Thanks

@horacioibrahim
Copy link

Great!

@g8gg
Copy link

g8gg commented Jul 31, 2017

Great!

@mcorrigan
Copy link

Still works, thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment