12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576 |
- Metadata-Version: 2.1
- Name: Jinja2
- Version: 3.1.4
- Summary: A very fast and expressive template engine.
- Maintainer-email: Pallets <contact@palletsprojects.com>
- Requires-Python: >=3.7
- Description-Content-Type: text/markdown
- Classifier: Development Status :: 5 - Production/Stable
- Classifier: Environment :: Web Environment
- Classifier: Intended Audience :: Developers
- Classifier: License :: OSI Approved :: BSD License
- Classifier: Operating System :: OS Independent
- Classifier: Programming Language :: Python
- Classifier: Topic :: Internet :: WWW/HTTP :: Dynamic Content
- Classifier: Topic :: Text Processing :: Markup :: HTML
- Classifier: Typing :: Typed
- Requires-Dist: MarkupSafe>=2.0
- Requires-Dist: Babel>=2.7 ; extra == "i18n"
- Project-URL: Changes, https://jinja.palletsprojects.com/changes/
- Project-URL: Chat, https://discord.gg/pallets
- Project-URL: Documentation, https://jinja.palletsprojects.com/
- Project-URL: Donate, https://palletsprojects.com/donate
- Project-URL: Source, https://github.com/pallets/jinja/
- Provides-Extra: i18n
- # Jinja
- Jinja is a fast, expressive, extensible templating engine. Special
- placeholders in the template allow writing code similar to Python
- syntax. Then the template is passed data to render the final document.
- It includes:
- - Template inheritance and inclusion.
- - Define and import macros within templates.
- - HTML templates can use autoescaping to prevent XSS from untrusted
- user input.
- - A sandboxed environment can safely render untrusted templates.
- - AsyncIO support for generating templates and calling async
- functions.
- - I18N support with Babel.
- - Templates are compiled to optimized Python code just-in-time and
- cached, or can be compiled ahead-of-time.
- - Exceptions point to the correct line in templates to make debugging
- easier.
- - Extensible filters, tests, functions, and even syntax.
- Jinja's philosophy is that while application logic belongs in Python if
- possible, it shouldn't make the template designer's job difficult by
- restricting functionality too much.
- ## In A Nutshell
- .. code-block:: jinja
- {% extends "base.html" %}
- {% block title %}Members{% endblock %}
- {% block content %}
- <ul>
- {% for user in users %}
- <li><a href="{{ user.url }}">{{ user.username }}</a></li>
- {% endfor %}
- </ul>
- {% endblock %}
- ## Donate
- The Pallets organization develops and supports Jinja and other popular
- packages. In order to grow the community of contributors and users, and
- allow the maintainers to devote more time to the projects, [please
- donate today][].
- [please donate today]: https://palletsprojects.com/donate
|