Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up

A Python engine for the Liquid template language.

License

NotificationsYou must be signed in to change notification settings

jg-rp/liquid

Repository files navigation

Python Liquid is a Python engine forLiquid, the safe, customer-facing template language.
We followShopify/Liquid closely and test against theGolden Liquid test suite.

PyPi - Versionconda-forgePython versions
TestsCoverage
PyPI - Downloads
License


Table of Contents

Install

Install Python Liquid usingPipenv:

$ pipenv install -u python-liquid

Orpip:

$ pip install python-liquid

Or fromconda-forge:

$ conda install -c conda-forge python-liquid

Links

Related Projects

Quick Start

render()

This example renders a template from a string of text with the package-levelrender() function. The template has just one placeholder variableyou, which we've given the value"World".

fromliquidimportrenderprint(render("Hello, {{ you }}!",you="World"))# Hello, World!

parse()

Often you'll want to render the same template several times with different variables. We can parse source text without immediately rendering it using theparse() function.parse() returns aBoundTemplate instance with arender() method.

fromliquidimportparsetemplate=parse("Hello, {{ you }}!")print(template.render(you="World"))# Hello, World!print(template.render(you="Liquid"))# Hello, Liquid!

Configure

Bothparse() andrender() are convenience functions that use the default Liquid environment. For all but the simplest cases, you'll want to configure an instance ofEnvironment, then load and render templates from that.

fromliquidimportCachingFileSystemLoaderfromliquidimportEnvironmentenv=Environment(autoescape=True,loader=CachingFileSystemLoader("./templates"),)

Then, usingenv.parse() orenv.get_template(), we can create aBoundTemplate from a string or read from the file system, respectively.

# ... continued from abovetemplate=env.parse("Hello, {{ you }}!")print(template.render(you="World"))# Hello, World!# Try to load "./templates/index.html"another_template=env.get_template("index.html")data= {"some": {"thing": [1,2,3]}}result=another_template.render(**data)

Unless you happen to have a relative folder calledtemplates with a file calledindex.html within it, we would expect aTemplateNotFoundError to be raised when running the example above.

Contributing

Please seeContributing to Python Liquid.


[8]ページ先頭

©2009-2025 Movatter.jp