Ophelia

Logiciel capture d'écran:
Ophelia
Détails logiciels:
Version: 0.3.5
Date de transfert: 15 Apr 15
Développeur: Thomas Lotze
Licence: Gratuit
Popularité: 5

Rating: nan/5 (Total Votes: 0)

Ophelia est un projet Python qui crée des pages XHTML à partir de modèles écrits en TAL, le modèle Zope Attribut Langue & nbsp;. Il est conçu pour réduire la répétition de code à zéro.
Le paquet contient à la fois une application WSGI courir Ophelia ainsi qu'un gestionnaire de demande de mod_python, le module Python pour le serveur Web Apache 2.
Fichiers de documentation citées ci-dessous peuvent être trouvés dans le répertoire de paquet, avec un certain nombre de doctests pour les modules.
Des points Entrée
Après avoir installé Ophélie et écrit certains modèles, comment pouvez-vous faire rendre des pages Web?
Utilisez Ophelia avec Apache
Le paquet contient un Python ophelia.modpython de module qui fournit un gestionnaire de demande pour le module mod_python Apache.
Utilisez Ophelia comme une application WSGI
Ophelia définit une classe d'application conforme à la norme WSGI, PEP 333: ophelia.wsgi.Application. Vous pouvez soit essayer en exécutant propre serveur HTTP de base wsgiref-Ophelia ou exécuter par ne importe quel serveur de WSGI vous pourriez occuper à utiliser.
Le serveur basé wsgiref-est installé comme l'exécutable de ophelia-wsgiref si Ophélie est installé comme un œuf avec le "wsgiref" extra permis. Son point d'entrée de script est ophelia.wsgi.wsgiref_server.
Dump pages simples sur la sortie standard
Un exécutable qui est toujours installé avec l'œuf de ophelia est ophelia-dump. Ce script a Ophelia rendre la réponse correspondant au chemin que vous spécifiez, et imprime à sys.stdout, éventuellement avec en-têtes HTTP. Le point d'entrée du script est ophelia.dump.dump.
Les deux scripts fournissent des instructions d'utilisation lorsqu'il est appelé avec l'option --help. Ils lisent un fichier de configuration; configuration.txt voir pour plus de détails.
Quel genre de sites est bon pour Ophélie?
Le contenu statique
Considérez Ophelia que SSI sur les médicaments. Ce ne est pas fondamentalement différent, juste beaucoup plus convivial et plus capable.
Utilisez Ophelia pour les sites où vous écrivez votre code HTML essentiellement vous-même, sauf que vous devez écrire les trucs récurrente qu'une seule fois. Réduire les redoublements à zéro a un prix: votre site doit suivre un modèle pour Ophélie de combiner vos modèles de la bonne façon.
Envisager la mise en page de votre site pour être hiérarchique: il ya un aspect commun à toutes vos pages, sections avoir certaines caractéristiques, et chaque page a un contenu unique. Il est crucial de Ophelia que cette hiérarchie reflète dans l'organisation du système de fichiers de vos documents; comment les modèles combinent est déduit de leur place dans la hiérarchie des répertoires.
Le contenu dynamique
Ophelia fait le langage Python disponibles pour intégrer du contenu dynamique. Chaque fichier modèle peut inclure un script Python. Les scripts Python et des modèles qui contribuent à une part de la page un ensemble commun de variables à modifier et utiliser.
Le modèle de contenu d'Ophélie est très simple et fonctionne mieux si chaque objet contenu que vous publiez est son propre point de vue: la page, il est représenté sur. Si vous obtenez le contenu de ressources externes de toute façon (par exemple, une base de données ou un référentiel de contrôle de version), il est toujours OK pour utiliser Ophelia même avec de multiples vues par objet de contenu aussi longtemps que le point de vue d'un objet ne dépend pas de type de l'objet ou même l'objet lui-même.
Tenter d'utiliser Ophélie sur un site plus complexe conduira à un enchevêtrement laide de la logique et de la présentation. Ne pas utiliser Ophelia pour les sites qui sont en fait des interfaces Web pour les applications, les systèmes de gestion de contenu et autres.
Comment fonctionne Ophelia
Les fichiers de modèle
Pour chaque demande, Ophelia cherche un certain nombre de fichiers de modèle. Il faut un fichier nommé "__init__" de chaque répertoire sur le chemin de la racine du site à la page, et un dernier pour la page elle-même. La demande est desservi par Ophélie si ce modèle final est trouvé.
Lors de la construction de la page, le modèle de la page est évaluée et son contenu stocké dans ce qu'on appelle la fente intérieure. Ensuite, chaque modèle sur le chemin du retour de la page à la racine est évaluée à son tour et peut inclure le contenu actuel de la fente intérieure. Le résultat est stocké dans la fente intérieure après chaque étape.
Le résultat du traitement du modèle de racine est servi de la page.
Les scripts Python
Chaque fichier modèle peut commencer par un script Python. Dans ce cas, le script est séparé de la matrice par la première apparition d'un "" Tag sur une ligne de sa propre (sauf pour les espaces à gauche ou à droite). Si le fichier modèle contient seulement un script Python, mais pas vraiment un modèle, mettre "" Dans sa dernière ligne.
Les scripts Python sont exécutés dans l'ordre lors de la traversée de la racine du site à la page. Ils sont gérés dans le même espace de noms de variables qui est ensuite utilisé comme le cadre d'évaluation des modèles. Les variables qui sont définies par un script Python peuvent être utilisées et modifiées par tout exécuter des scripts plus tard, ainsi que par des expressions TALES utilisés dans les modèles.
L'espace de noms est initialisé par Ophélie avec une seule variable, __request__, qui fait référence à l'objet de requête. Ainsi, les scripts ont accès aux détails de la demande et internes de traversée. En plus des variables de configuration, les scripts peuvent également importer des modules, définir des fonctions, accéder au système de fichiers, et généralement faire tout ce qu'un programme Python peut faire.
Comment se comporte Ophelia
Canonisation URL et redirection
Si Ophélie rencontre une URL qui correspond à un répertoire, il se comporte comme Apache dans sa configuration par défaut: Si l'URL ne se termine pas par un slash, il rediriger le navigateur pour ajouter le slash. Si la barre est là, il va essayer de trouver un modèle nommé index.html par défaut, et le rendre comme répertoire "index".
Selon la configuration, les demandes explicites pour les pages d'index de répertoire peuvent être redirigés vers nu URL de répertoire sans le segment final de chemin. Ce serait tourner en.
En outre, Ophelia canonise URL contenant des segments de chemin "." et ".." conformément à la RFC 3986 sur la syntaxe générique d'URI et supprime les segments de tracé qui ne sont pas vides à la fin de la trajectoire. Si l'URL est modifiée par ces règles, Ophelia redirige le navigateur en conséquence.
Le gestionnaire de mod_python
Apache2 traite une requête dans chacune des phases, qui peuvent être traités par des modules tels que mod_python. Ophelia fournit un gestionnaire de mod_python pour la phase de génération de contenu. Si une URL demandée est configuré pour être manipulé par Ophelia, le gestionnaire tente de trouver des modèles appropriés dans le système de fichiers, et de construire une page de leur part.
Mod_python gestionnaire d'Ophélie ne provoque une erreur de fichier introuvable HTTP. Au lieu de cela, il passe le contrôle à Apache et d'autres modules se il constate qu'il ne peut pas construire une ressource particulière. Apache retombe à contenu statique à partir du disque dans ce cas. Ophelia peut donc être installé au-dessus d'un site statique pour traiter seulement les demandes qui modèles existent dans le répertoire de template

Exigences :.

  • Python

D'autres logiciels de développeur Thomas Lotze

tl.pkg
tl.pkg

15 Apr 15

tl.testing
tl.testing

15 Apr 15

Commentaires à Ophelia

Commentaires non trouvées
Ajouter un commentaire
Tourner sur les images!