Ophelia

Screenshot der Software:
Ophelia
Softwarebeschreibung:
Version: 0.3.5
Upload-Datum: 15 Apr 15
Entwickler: Thomas Lotze
Lizenz: Frei
Popularität: 5

Rating: nan/5 (Total Votes: 0)

Ophelia ist ein Python-Projekt, das XHTML-Seiten aus Vorlagen in TAL geschrieben schafft, die Zope Template Attribute Language & nbsp;. Es wurde entwickelt, um Code-Wiederholungen auf Null zu reduzieren.
Das Paket enthält sowohl einen WSGI Anwendung ausgeführt Ophelia sowie eine Request-Handler für mod_python, das Python-Modul für den Apache 2 Webserver.
Dokumentationsdateien nachstehend erwähnt werden, können in der Verpackung Verzeichnis gefunden werden, zusammen mit einer Reihe von Doctests für die Module.
Einstiegspunkte
Nachdem Sie Ophelia installiert und schrieb einige Vorlagen, wie kann man es machen Web-Seiten?
Verwenden Ophelia mit Apache
Die Python-Paket enthält ein Modul, das eine ophelia.modpython Request-Handler für das mod_python Apache-Modul zur Verfügung stellt.
Verwenden Ophelia als WSGI Anwendung
Ophelia legt ein Anwendungsklasse nach dem WSGI Standard PEP 333: ophelia.wsgi.Application. Sie können entweder versuchen es, indem Sie Ophelias eigenen wsgiref-basierte HTTP-Server oder führen Sie es von einem WSGI Server, den Sie könnte darauf zu verwenden.
Die wsgiref-basierten Server als ophelia-wsgiref ausführbare installiert ist, wenn Ophelia ist wie ein Ei mit dem "wsgiref" extra aktiviert werden installiert. Sein Skripteinstiegspunkt ist ophelia.wsgi.wsgiref_server.
Dump einzelne Seiten nach stdout
Eine ausführbare, die immer mit dem ophelia Ei installiert ist ophelia-dump. Dieses Skript hat Ophelia machen die Antwort, die der von Ihnen angegebenen Pfad und druckt sie auf sys.stdout, optional mit HTTP-Header. Einstiegspunkt des Skripts ist ophelia.dump.dump.
Beide Skripte bieten einige Gebrauchsanweisung, wenn mit der Option --help aufgerufen. Sie lesen eine Konfigurationsdatei; siehe configuration.txt für Details.
Welche Art von Websites ist Ophelia gut?
Statische Inhalte
Betrachten Ophelia als SSI auf Drogen. Es ist nicht grundsätzlich anders, nur viel freundlicher und leistungsfähiger.
Verwenden Ophelia für Standorte, an denen man im Grunde schreiben Sie Ihre HTML selbst, es sei denn, dass Sie schreiben, die wiederkehrende Material nur einmal. Die Reduzierung Wiederholung Null hat ihren Preis: Ihre Website muss ein Muster folgen für Ophelia, um Ihre Vorlagen richtig zu kombinieren.
Betrachten Sie das Layout Ihrer Website hierarchisch zu sein: es gibt einen gemeinsamen Blick auf alle Ihre Seiten, Abschnitte haben bestimmte Eigenschaften, und jede Seite hat einzigartige Inhalte. Es ist entscheidend, Ophelia, dass diese Hierarchie widerspiegeln im Dateisystem Organisation Ihrer Dokumente; wie Vorlagen kombinieren wird von ihrem Platz in der Hierarchie der Verzeichnisse abgeleitet.
Dynamische Inhalte
Ophelia macht die Programmiersprache Python für die Aufnahme von dynamischen Inhalten zur Verfügung. Jede Vorlage kann ein Python-Skript enthalten. Python-Skripte und Vorlagen Beitrag zu einer Seite teilen einen gemeinsamen Satz von Variablen zu ändern und zu verwenden.
Inhaltsmodell Ophelias ist sehr einfach und funktioniert am besten, wenn jedes Content-Objekt von Ihnen veröffentlichte ist eine eigene Ansicht: die Seite ist auf vertreten. Wenn Sie Inhalte aus externen Ressourcen sowieso (zB eine Datenbank oder ein Versionsverwaltung), ist es immer noch OK, um Ophelia sogar mit mehreren Views pro Content-Objekt, solange Ansichten eines Objekts verwenden Sie keine über den Typ des Objekts oder das Objekt ab selbst.
Der Versuch, Ophelia auf einer komplexeren Site verwenden wird, um einen hässlichen Verschränkung von Logik und Präsentation führen. Verwenden Sie keine Ophelia für Websites, die eigentlich Web-Schnittstellen, Anwendungen, Content Management Systeme und dergleichen.
Wie Ophelia funktioniert
Vorlagendateien
Für jede Anforderung sieht Ophelia für eine Reihe von Vorlagendateien. Es dauert eine Datei mit dem Namen "__init__" von jedem Verzeichnis auf dem Weg von der Site-Stamm auf die Seite, und eine abschließende einen für die Seite selbst. Der Antrag wird von Ophelia gedient, wenn die endgültige Vorlage gefunden wird.
Beim Bau der Seite, wird der Seite Vorlage ausgewertet und deren Inhalt in der so genannten inneren Schlitz gespeichert. Dann wird jede Vorlage auf dem Weg von der Seite der Wurzel wieder wiederum ausgewertet und kann den aktuellen Inhalt des inneren Schlitzes umfassen. Das Ergebnis ist in dem inneren Schlitz nach jedem Schritt gespeichert.
Das Ergebnis der Verarbeitung des Root-Template als Seiten serviert.
Python-Skripte
Jede Vorlage kann mit einem Python-Skript zu starten. In diesem Fall wird das Skript aus der Vorlage durch das erste Auftreten eines "" Tag auf einer eigenen Zeile getrennt (außer Whitespace nach links oder rechts). Wenn der Vorlagendatei enthält nur eine Python-Skript, aber nicht eigentlich eine Vorlage an anderen Stelle "" In der letzten Zeile.
Python-Script, um ausgeführt werden, während Durchqueren von der Site-Stamm zur Seite. Sie werden in einem Namensraum von Variablen, die später als die Bewertung Rahmen der Vorlagen verwendet wird ausgeführt. Variablen, die von einem Python-Skript gesetzt werden kann durch beliebige Skripte später ausführen, als auch von TALES-Ausdrücke in den Vorlagen verwendet und verändert werden.
Der Namespace wird von Ophelia mit einer einzigen Variablen, __request__, die die Anforderung Objekt verweist initialisiert. So haben Skripte Zugriff auf Anfrage Details und Traversal Einbauten. Neben der Einstellung Variablen können Skripte auch Module zu importieren, definieren Funktionen, auf das Dateisystem und in der Regel nichts ein Python-Programm zu tun.
Wie verhält sich Ophelia
URL Kanonisierung und Umleitung
Wenn Ophelia trifft eine URL, die auf ein Verzeichnis verhält es sich ähnlich wie bei Apache in der Standardkonfiguration entspricht: Wenn die URL nicht mit einem Schrägstrich, wird der Browser die Schrägstrich hinzufügen, umzuleiten. Wenn der Schrägstrich ist da, wird es versuchen, eine Vorlage index.html standardmäßig den Namen zu finden, und machen es als das Verzeichnis "index".
Je nach Konfiguration kann expliziten Anforderungen für Verzeichnisindexseiten umgeleitet werden, um Verzeichnis URLs ohne die letzte Pfadsegment entblössen. Dies würde Sie .
Zudem Ophelia Kanonisiert URLs, die Pfadsegmente "." und ".." gemäß RFC 3986 auf generische URI-Syntax und entfernt leere Pfadsegmenten, die nicht am Ende des Weges sind. Wenn der URL wird durch diese Regeln geändert, leitet Ophelia den Browser entsprechend.
Die mod_python-Handler
Apache2 eine Anforderung verarbeitet, in Phasen, von denen jede durch Module wie Mod_python gehandhabt werden. Ophelia eine mod_python-Handler für den Inhalt Erzeugungsphase. Wenn eine angeforderte URL konfiguriert ist, um von Ophelia behandelt werden, der Handler versucht, entsprechende Vorlagen im Dateisystem zu finden, und bauen eine Seite von ihnen.
Mod_python-Handler Ophelias nie bewirkt eine Datei nicht gefunden HTTP-Fehler. Stattdessen geht die Steuerung zurück zu Apache und andere Module, wenn sie feststellt, kann sie nicht eine bestimmte Ressource zu bauen. Apache fällt zurück auf statischen Inhalt von der Festplatte in diesem Fall. Ophelia kann somit auf einer statischen Website, um nur diese Anforderungen, für die Vorlagen im Vorlagenverzeichnis existieren hand installiert werden

Anforderungen .

  • Python

Andere Software von Entwickler Thomas Lotze

tl.pkg
tl.pkg

15 Apr 15

tl.testing
tl.testing

15 Apr 15

Kommentare zu Ophelia

Kommentare nicht gefunden
Kommentar hinzufügen
Schalten Sie auf die Bilder!