negotiate

Skjermbilde programvare:
negotiate
Prog.varedetaljer:
Versjon: 0.0.1
Last opp dato: 14 Apr 15
Utvikler: Nick Stenning
Lisens: Gratis
Popularitet: 2

Rating: nan/5 (Total Votes: 0)

forhandle er en smart, enkel innholdsforhandling for Python webapplikasjoner.
Innhold forhandling kan være vanskelig å gjøre det bra. Ideelt sett bør koden være tørt, og du vil ikke bli gjentatt den samme gamle standardtekst i flere visningsmetoder for å avgi samme domene objekt i forskjellige formater. forhandle bidrar til å gjøre livet ditt enda enklere ved at du kan dekorere visningsmetoder med formatters som automatisk oversette dine domeneobjekter til det formatet spurt av klienten.
Det er veldig enkelt å bruke. Forhåpentligvis dette eksempelet (for en Flask søknad) gjør hovedpunktene klart:
# Først må vi skrive et par formatters som angir hvordan å oversette
# Utgang av den oppfatning funksjon i et bestemt format. Her definerer vi en
# JSON formaterings og en HTML formaterings som tar en mal parameter.
fra negotiate.flask import Atter
klasse JSONFormatter (Atter):
& Nbsp; format = 'json'
& Nbsp; mimetyper = ['application / json']
& Nbsp; def gjengi (selv, obj):
& Nbsp; retur json.dumps (obj)
klasse HTMLFormatter (Atter):
& Nbsp; format = 'json'
& Nbsp; mimetyper = [text / html ']
& Nbsp; def konfigurere (selv, mal):
& Nbsp; self.template = mal
& Nbsp; def gjengi (selv, obj):
& Nbsp; tilbake gjengi (self.template, ** obj)
# Deretter, når du bygger programmet, vi pynter utsikten funksjonen med
# "Forhandle" dekoratør, med en liste over formater som denne visningen er tilgjengelig.
fra negotiate.flask import forhandle
@ App.route ('/ innlegg / ')
@ App.route ('/ innlegg / . ')
negotiate (JSONFormatter)
negotiate (HTMLFormatter, mal = 'post.html')
def view_post (id, format = Ingen):
& Nbsp; post = Posts.by_id (id)
& Nbsp; hvis innlegget er None:
& Nbsp; abortere (404)
& Nbsp; hvis ikke g.user.authorize ("lese", post):
& Nbsp; abortere (401)
& Nbsp; retur {'post': post}
Resultatet er et syn handling som vil returnere en HTML-versjon av innlegget som standard (dvs. med Godta: * / * og ingen eksplisitt format), eller hvis den .html er eksplisitt spesifisert, eller et JSON versjon av innlegget hvis .json forlengelse gis eller Godta: application / json sendes med forespørselen.
Support
forhandle støtter for tiden Flask og Ledningsmaster selv legge til støtte for andre web rammeverk bør være ganske lett. Ta en titt på forhandle / flask.py og forhandle / pylons.py å se den lille mengden av integrering kode som kreves

Krav .

  • Python

Annen programvare fra utvikleren Nick Stenning

envmgr
envmgr

20 Feb 15

imaprelay
imaprelay

14 Apr 15

Honcho
Honcho

20 Feb 15

Kommentarer til negotiate

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