Outils pour utilisateurs

Outils du site


dev:frameworks:pyramid:presentation

Pyramid

Quelques notes extraites de la documentation 1.6 du framework Pyramid.

Système de template

Pyramid a été pensé pour pourvoir être interfacé facilement avec des programmes de rendus externes ou “renderers”. Des binding existent pour:

  • Mako
  • Genshi
  • Chameleon
  • Jinja2

Les événements

Pyramid émets des messages (events) durant tout le cycle de vie de traitement de la requête. il est possible d’écouter ces événements en s'enregistrant auprès des listeners. Il est également possible d'ajouter des evenements.

Internationalisation

Pyramid fournit un système complet de gestion de l' internationalisation.

Cache HTTP

Pyramid propose un système de cache avec ses vues facilement paramétrable via les décorateurs.

Gestion des transaction

Pyramid se repose sur Zope pour la gestion des transactions. Un systeme centralisé de gestion des transactions permet d’éviter des incohérences lors de l'enregistrement des données.

Projet et paquetages

Pyramid permet de générer un projet en s'appuyant sur des structures préexistantes (scaffolds). Un projet contient 1 ou plusieurs paquets. La commande pcreate générera le squelette du projet. Ci dessous les structures préexistantes:

starter Pas de persistance des données, mapping URL via URL dispatch
zodb persistance via ZODB et mapping via traversal
alchemy Persistance via SQLAlchemy et mapping URL via URL dispatch

Pour générer un projet nommé PyraTest en utilisant le scaffold starter:

$ pcreate -s starter PyraTest

Le dossier PyraTest, conteneur global est créé. Ci dessous le contenu du répertoire:

.
├── pyratest
├── PyraTest.egg-info
├── CHANGES.txt
├── development.ini
├── MANIFEST.in
├── production.ini
├── README.txt
├── setup.cfg
└── setup.py
  • Le dossier pyratest, package python.
  • Le fichier setup.py exécutable pour lancer le déploiement du projet, les instances du serveur web.
  • Les fichiers development.ini et production.ini pour paramétrer les instances de serveur.
  • MANIFEST.ini listing des fichiers non python à inclure lors de la distribution de l'application par setuptools. Le fichier peut être supprimé et setuptools paramétré pour distribuer les fichiers suivis par le logiciel de suivi de version (tel que git).
  • Le dossier static, contient les ressources statiques servies par le serveur web (fichiers css, images etc)
dev/frameworks/pyramid/presentation.txt · Dernière modification : 2021/02/01 21:51 de 127.0.0.1