Ophelia

Software screenshot:
Ophelia
Dettagli del software:
Versione: 0.3.5
Data di caricamento: 15 Apr 15
Sviluppatore: Thomas Lotze
Licenza: Libero
Popolarità: 5

Rating: nan/5 (Total Votes: 0)

Ophelia è un progetto Python che crea pagine XHTML da modelli scritti in TAL, la Zope Template Attribute Language & nbsp;. È stato progettato per ridurre il codice di ripetizione a zero.
Il pacchetto contiene sia un'applicazione WSGI esecuzione Ofelia e un gestore di richieste per mod_python, il modulo Python per il server web Apache2.
I file di documentazione citati di seguito si trovano all'interno della directory del pacchetto, insieme a un certo numero di doctests per i moduli.
Punti ingresso
Dopo aver installato Ophelia e scritto alcuni modelli, come si può fare il rendering di pagine web?
Utilizzare Ophelia con Apache
Il pacchetto di Python contiene un ophelia.modpython modulo che fornisce un gestore di richiesta per il modulo mod_python di Apache.
Utilizzare Ofelia come applicazione WSGI
Ophelia definisce una classe di applicazione compatibile con lo standard WSGI, PEP 333: ophelia.wsgi.Application. È possibile provare eseguendo un proprio server HTTP basato wsgiref-di Ofelia o eseguirlo da qualsiasi server WSGI si potrebbe cura di utilizzare.
Il server basato wsgiref-è installato come file eseguibile Ophelia-wsgiref se Ofelia è installato come un uovo con il "wsgiref" extra abilitato. Il suo punto di ingresso script è ophelia.wsgi.wsgiref_server.
Dump pagine singole a stdout
Un eseguibile che è sempre installato con l'uovo Ofelia è Ophelia-dump. Questo script ha Ophelia rendere la risposta corrispondente al percorso specificato, e lo stampa su sys.stdout, scelta con intestazioni HTTP. Punto di ingresso dello script è ophelia.dump.dump.
Entrambi gli script forniscono alcuni istruzioni per l'uso quando viene chiamato con l'opzione --help. Leggono un file di configurazione; vedi CONFIGURATION.txt per i dettagli.
Che tipo di siti è Ophelia bene?
Il contenuto statico
Considerate Ophelia come SSI in materia di droga. Non è fondamentalmente diversa, solo molto più amichevole e più capace.
Utilizzare Ophelia per i siti in cui è fondamentalmente di scrivere il codice HTML da soli, tranne che è necessario scrivere le cose che ricorre una sola volta. Ridurre la ripetizione a zero ha un prezzo: il sito deve seguire un modello per Ophelia per combinare i modelli nel modo giusto.
Considerate il layout del tuo sito per essere gerarchico: c'è un aspetto comune a tutte le pagine, sezioni avere determinate caratteristiche, e ogni pagina ha contenuti unici. E 'fondamentale per Ophelia che questa gerarchia riflettono nell'organizzazione file system dei documenti; come i modelli combinano è dedotta da loro posti nella gerarchia di directory.
Contenuto dinamico
Ophelia rende il linguaggio Python disponibili per l'inclusione di contenuti dinamici. Ogni file template può includere uno script Python. Script Python e modelli che contribuiscono a una quota di pagina un insieme comune di variabili da modificare e utilizzare.
Modello di contenuto di Ofelia è molto semplice e funziona meglio se ogni oggetto contenuto si pubblica è il suo punto di vista: la pagina viene rappresentata. Se si ottiene contenuti da risorse esterne comunque (ad esempio un database o un repository di controllo della versione), è ancora bene usare Ophelia anche con più viste per oggetto contenuto finché vista di un oggetto non dipendono dal tipo dell'oggetto o l'oggetto stesso.
Cercando di utilizzare Ophelia su un sito più complesso porterà ad un brutto groviglio di logica e presentazione. Non utilizzare Ophelia per i siti che sono in realtà interfacce web ad applicazioni, sistemi di content management e simili.
Come Ophelia funziona
I file modello
Per ogni richiesta, Ophelia cerca un certo numero di file di modello. Ci vuole un file denominato "__init__" da ogni directory sul percorso dalla radice sito alla pagina, e una finale per la pagina stessa. La richiesta è servita da Ophelia se viene trovato quel modello finale.
Quando si costruisce la pagina, il modello della pagina viene valutata e il suo contenuto memorizzato in quello che viene chiamato lo slot interno. Poi ogni modello sulla via del ritorno dalla pagina alla radice viene valutata a sua volta e può comprendere il contenuto corrente dello slot interno. Il risultato viene memorizzato nella feritoia interna dopo ogni passaggio.
Il risultato dell'elaborazione del Modello di radice è servita come pagina.
Script Python
Ogni file template può iniziare con uno script Python. In tal caso, lo script è separato dal modello dal primo verificarsi di un "" Tag su una linea propria (eccetto spazi a destra oa sinistra). Se il file modello contiene solo uno script Python, ma in realtà non un modello, mettere "" Nella sua ultima linea.
Script Python vengono eseguiti in ordine durante l'attraversamento dalla radice sito alla pagina. Essi vengono eseguiti nello stesso spazio dei nomi di variabili che viene poi utilizzato come quadro di valutazione dei modelli. Le variabili che sono impostate da uno script Python possono essere usate e modificate da qualsiasi script eseguiti successivamente, oltre che dai racconti espressioni usate nei modelli.
Lo spazio dei nomi viene inizializzato da Ophelia con una variabile singola, __request__, che fa riferimento l'oggetto di richiesta. Così, script hanno accesso ai dati di richiesta e interni di attraversamento. Oltre alle variabili di impostazione, gli script possono anche importare moduli, definire funzioni, accedere al file system, e in generale fare tutto un programma Python può fare.
Come Ophelia si comporta
Canonica URL e il reindirizzamento
Se Ophelia incontra un URL che corrisponde ad una directory si comporta in modo simile ad Apache nella sua configurazione di default: Se l'URL non termina con una barra, si reindirizzare il browser per aggiungere la barra. Se la barra è lì, si cercherà di trovare un modello di nome index.html di default, e lo rendono come directory "indice".
A seconda della configurazione, esplicite richieste di pagine di indice directory possono essere reindirizzati a nudo URL directory senza il segmento del tracciato finale. Questo trasformerebbe in.
Inoltre, Ophelia canonicalizes URL contenenti segmenti di percorso "." e ".." secondo RFC 3986 sulla sintassi URI generico, e rimuove i segmenti di tracciato vuote che non sono alla fine del percorso. Se l'URL viene modificato da queste regole, Ophelia reindirizza il browser di conseguenza.
Il gestore mod_python
Apache2 elabora una richiesta in fasi, ciascuna delle quali possono essere gestiti da moduli come mod_python. Ophelia fornisce un gestore mod_python per la fase contenuti generazione. Se un URL richiesto è configurato per essere gestita da Ofelia, il gestore cerca di trovare modelli appropriati nel file system, e costruire una pagina da loro.
Handler mod_python di Ofelia non causa un file non trovato errore HTTP. Invece, passa il controllo al Apache e altri moduli, se lo trova, non può costruire una risorsa particolare. Apache ricade a servire contenuto statico da disco in quel caso. Ophelia può quindi essere installato su di un sito statico per gestire solo le richieste per le quali esistono i modelli nella directory template

Requisiti :.

  • Python

Altri software di sviluppo Thomas Lotze

tl.pkg
tl.pkg

15 Apr 15

tl.testing
tl.testing

15 Apr 15

Commenti a Ophelia

I commenti non trovato
Aggiungi commento
Accendere le immagini!