zope.paste

Skjermbilde programvare:
zope.paste
Prog.varedetaljer:
Versjon: 1.0.0 Alpha 1
Last opp dato: 20 Feb 15
Utvikler: Sidnei da Silva
Lisens: Gratis
Popularitet: 1

Rating: 5.0/5 (Total Votes: 1)

zope.paste er en pakke som lar deg
- Ansette WSGI middlewares inne i en Zope tre søknad
- Distribuere Zope tre applikasjonsserver på noen WSGI-stand webserver
hjelp PasteDeploy. Dette er to helt forskjellige modi operandi som bare har til felles at de er lette PasteDeploy. Hver er forklart i detalj nedenfor.
WSGI middlewares inne Zope 3
zope.paste kan du stable WSGI middlewares på toppen av Zope 3 utgiver søknad uten å endre måten du konfigurere Zope (zope.conf) eller kjøre den (runzope, zopectl).
Konfigurasjonen er svært enkel. Forutsatt at du allerede har opprettet en Zope 3 forekomst ved hjelp av mkzopeinstance manus, er det tre trinn som må utføres:
Installere og konfigurere zope.paste
zope.paste kan installeres som et egg hvor som helst på din PYTHONPATH eller bare droppet inn ditt / lib / python katalogen. Så du må aktivere zope.paste sin ZCML konfigurasjon ved å opprette filen /etc/package-includes/zope.paste-configure.zcml med følgende innhold:

Konfigurering av server
Vi skaper en direktivet i /etc/zope.conf å bruke zope.paste server definisjon, Paste.Main. På den måten WSGI middlewares blir startet når svarene blir servert gjennom denne serveren:

& Nbsp; typen Paste.Main
& Nbsp; adresse 8081

Konfigurere WSGI stabel
Nå konfigurere vi en WSGI program som bruker PasteDeploy syntaks i /etc/paste.ini. Her er et eksempel på hvordan du konfigurerer Paste.Main program for å bruke Zope 3 utgiver som en WSGI søknad, derfor gjør akkurat det samme som den vanlige HTTP-server definisjon ville gjøre:
[App: Paste.Main]
paste.app_factory = zope.paste.application: zope_publisher_app_factory
Det er egentlig ikke interessant, skjønt. PasteDeploy lar deg kjede ulike WSGI enheter sammen, og det er her det blir interessant. Det synes å være et skille mellom "apps" og "filtre" (også referert til som "mellomvare"). Et eksempel som kan være av interesse er å bruke en XSLT transformasjon til utgangen av Zope 3 WSGI søknad.
Lykkelig nok, noen synes å har allerede opprettet en WSGI filter for å bruke en XSLT stilark. Du kan finne det på http://www.decafbad.com/2005/07/xmlwiki/lib/xmlwiki/xslfilter.py
Hvis du ønsket å bruke dette WSGI filter til Zope 3, ville du trenger tre ting:
1. Sett xslfilter.py fil et sted i PYTHONPATH. / Lib / python er et bra sted.
2. Legg dette tekstutdraget til bunnen av xslfilter.py:
& Nbsp; def filter_factory (global_conf, ** local_conf):
& Nbsp; def filtrere (app):
& Nbsp; returnere XSLFilter (app)
& Nbsp; returfilter
3. Endre paste.ini fil som følger:
& Nbsp; [rørledning: Paste.Main]
& Nbsp; rørledning = XSLT hoved
& Nbsp; [app: main]
& Nbsp; paste.app_factory = zope.paste.application: zope_publisher_app_factory
& Nbsp; [filter: XSLT]
& Nbsp; paste.filter_factory = xslfilter: filter_factory
& Nbsp; Hva dette er å definere en rørledning. Lær mer om dette på PasteDeploy hjemmeside. Henvise til kilden xslfilter.py for informasjon om hvordan du passerer et stilark til filteret.
Distribuere Zope 3 på en WSGI-stand webserver
zope.paste lar deg kjøre Zope 3 på noen WSGI-stand webserver programvare ved hjelp PasteDeploy. For dette vil du ikke lenger trenger en Zope 3 eksempel (men du kan fortsatt ha en), vil du ikke konfigurere Zope 3 gjennom zope.conf og vil ikke starte det ved hjelp runzope eller zopectl.
Konfigurerer programmet
zope.paste gir en PasteDeploy-kompatibel fabrikk for Zope 3 sin WSGI utgiver søknad og registrerer den i et inngangspunkt. Vi kan derfor lage en veldig enkel Zope 3 program i en PasteDeploy konfigurasjonsfil (f.eks paste.ini):
[App: main]
bruk = egg: zope.paste
site_definition = /path/to/site.zcml
file_storage = /path/to/Data.fs
devmode = på
I dette tilfellet refererer /path/to/site.zcml til en site.zcml som kjent fra en Zope 3-forekomst. Du kan for eksempel sette paste.ini i et eksisterende Zope 3 eksempel, ved siden av site.zcml.
Konfigurere ZODB database
I stedet for å henvise til en ZODB fillager bruker file_storage innstillingen, kan du også konfigurere flere eller andre ZODB database backends i en ZConfig-stil konfigurasjonsfil (mye som zope.conf), f.eks følgende konfigurerer et Zeo klient:

& Nbsp;
& Nbsp; server localhost: 8100
& Nbsp; lagring 1
& Nbsp; cache-størrelse 20 MB
& Nbsp;


Henvise til denne filen fra paste.ini denne måten (og slett file_storage innstilling):
db_definition = db.conf
Konfigurering av server
For å kunne bruke vår Zope søknad, vi trenger bare å legge til en server definisjon. Vi kan bruke den som kommer med Paste eller PasteScript, heller:
[Serveren: main]
bruk = egg: PasteScript # wsgiutils
vert = 127.0.0.1
port = 8080
Nå kan vi starte programmet ved hjelp av paster kommando som kommer med PasteScript:
& Nbsp; paster tjene paste.ini
WSGI middlewares kan konfigureres som beskrevet ovenfor eller på PasteDeploy nettsted

Hva er nytt i denne utgaven:.

  • Lagt til støtte for Python 3.3.
  • Droppet støtte for Python 2.4 og 2.5.
  • Fjernet støtte for å ansette WSGI middlewares inne en Zope tre søknad. Bare manuset-basert server oppstart er nå støttet.
  • Lagt til en ny konsoll skript for å kjøre en lime-konfigurert WSGI server og applikasjon.
  • Conform til standard ZF prosjekt layout.
  • Lagd lisens og opphavsrett fil. Også fast opphavsrett i filen overskrifter.
  • Lagd MANIFEST.in og tox.ini.

Hva er nytt i versjon 0.4:

  • Legg til denne changelog, rekonstruert fra svn logger og slipp datoer PyPI.
  • Støtte en 'funksjoner' config alternativ i PasteDeploy INI-fil, som kan inneholde en space-separert liste over funksjonsnavn. Disse kan bli testet for i ZCML filer med syntaksen.
  • Tidligere den eneste funksjonen som kan aktiveres var 'devmode ", og det hadde sin egen alternativet. For bakoverkompatibilitet, devmode = på legger en 'devmode "-funksjonen til funksjonsliste.

Krav :

  • Python

Kommentarer til zope.paste

Kommentarer ikke funnet
Legg til kommentar
Slå på bilder!