Skip to content

Instantly share code, notes, and snippets.

@tuxfight3r
Forked from wrunk/jinja2_file_less.py
Created March 12, 2016 16:08
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save tuxfight3r/9d758bd6cc148cd2eb7f to your computer and use it in GitHub Desktop.
Save tuxfight3r/9d758bd6cc148cd2eb7f to your computer and use it in GitHub Desktop.
python jinja2 examples
#!/usr/bin/env/python
#
# More of a reference of using jinaj2 without actual template files.
# This is great for a simple output transformation to standard out.
#
# Of course you will need to "sudo pip install jinja2" first!
#
# I like to refer to the following to remember how to use jinja2 :)
# http://jinja.pocoo.org/docs/templates/
#
from jinja2 import Environment
HTML = """
<html>
<head>
<title>{{ title }}</title>
</head>
<body>
Hello.
</body>
</html>
"""
def print_html_doc():
print Environment().from_string(HTML).render(title='Hellow Gist from GutHub')
if __name__ == '__main__':
print_html_doc()
#!/usr/bin/env/python
#
# Using the file system load
#
# We now assume we have a file in the same dir as this one called
# test_template.html
#
from jinja2 import Environment, FileSystemLoader
import os
# Capture our current directory
THIS_DIR = os.path.dirname(os.path.abspath(__file__))
def print_html_doc():
# Create the jinja2 environment.
# Notice the use of trim_blocks, which greatly helps control whitespace.
j2_env = Environment(loader=FileSystemLoader(THIS_DIR),
trim_blocks=True)
print j2_env.get_template('test_template.html').render(
title='Hellow Gist from GutHub'
)
if __name__ == '__main__':
print_html_doc()
<html>
<head>
<title>{{ title }}</title>
</head>
<body>
Hello.
</body>
</html>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment