Metadata-Version: 2.1
Name: pyams_template
Version: 2.0.1
Summary: PyAMS templates management
Home-page: https://pyams.readthedocs.io
Author: Thierry Florac
Author-email: tflorac@ulthar.net
License: ZPL
Keywords: Pyramid PyAMS
Classifier: License :: OSI Approved :: Zope Public License
Classifier: Development Status :: 4 - Beta
Classifier: Programming Language :: Python
Classifier: Framework :: Pyramid
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Python: >=3.5
Provides-Extra: test
License-File: LICENSE

======================
PyAMS_template package
======================

.. contents::


What is PyAMS?
==============

PyAMS (Pyramid Application Management Suite) is a small suite of packages written for applications
and content management with the Pyramid framework.

**PyAMS** is actually mainly used to manage web sites through content management applications (CMS,
see PyAMS_content package), but many features are generic and can be used inside any kind of web
application.

All PyAMS documentation is available on `ReadTheDocs <https://pyams.readthedocs.io>`_; source code
is available on `Gitlab <https://gitlab.com/pyams>`_ and pushed to `Github
<https://github.com/py-ams>`_.


What is PyAMS_template?
=======================

PyAMS is using Chameleon internally as HTML templates engine.

This package, which is essentially an adaptation of "z3c.template" package for Pyramid, allows to
separate the definition of a view code from it's rendering template; this template selection can
actually be based on the view but also on the request layer (see "PyAMS_layer" package to get more
information about layers).

PyAMS_template package provides a "template_config" decorator, which allows you to define a template
for a given view, and a "layout_config" decorator, which allows to define a "layout" template;
layout templates are particularly useful when using "pagelets", which are defined into another
package (see PyAMS_pagelet).

You can also override a template definition for a given view, without creating a new view class,
just by using the "override_template" or "override_layout" functions.

View and layout templates can also be declared using ZCML instead of Python code, by using the
<template /> and <layout /> directives.


Changelog
=========

2.0.1
-----
 - updated Buildout configuration

2.0.0
-----
 - migrated to Pyramid 2.0
 - added support for Python 3.10 and 3.11

1.2.0
-----
 - removed support for Python < 3.7

1.1.3
-----
 - removed Travis-CI configuration

1.1.2
-----
 - updated Travis configuration

1.1.1
-----
 - updated global registry access

1.1.0
-----
 - removed ZCML directives
 - updated doctests

1.0.6
-----
 - updated super-call of layout and template getters

1.0.5
-----
 - refactored code to reduce duplicated lines

1.0.4
-----
 - modified required arguments of templates registration
 - updated doctests

1.0.3
-----
 - corrected duplicated variable name mismatch in "template_config" and "layout_config"
   decorators

1.0.2
-----
 - new version to avoid upload issue!

1.0.1
-----
 - added Pyramid configuration settings to templates configuration

1.0.0
-----
 - initial release
