negotiate

Software screenshot:
negotiate
Software informatie:
Versie: 0.0.1
Upload datum: 14 Apr 15
Ontwikkelaar: Nick Stenning
Licentie: Gratis
Populariteit: 2

Rating: nan/5 (Total Votes: 0)

onderhandelen is een slimme, eenvoudige onderhandelen over de inhoud voor Python web applicaties.
Onderhandelen over de inhoud kan moeilijk zijn om goed te doen zijn. Idealiter zou je code droog zijn, en je zou niet herhalen van dezelfde oude standaardtekst meerdere op het scherm methoden om hetzelfde domein object uitzenden in verschillende formaten. onderhandelen helpt om je leven nog makkelijker door u in staat om uw weergave methoden versieren met formatters dat uw domein objecten automatisch vertalen in de door de klant gevraagde formaat.
Het is echt eenvoudig te gebruiken. Hopelijk dit voorbeeld (voor een Kolf toepassing) maakt de belangrijkste punten duidelijk:
# Eerst schrijven we een paar formatters die aangeven hoe u het te vertalen
# Output van de functie uitzicht op een bepaald formaat. Hier definiëren we een
# JSON formatteerder en een HTML formatter dat een template parameter neemt.
van negotiate.flask import Formatter
klasse JSONFormatter (Formatter):
& Nbsp; format = "json"
& Nbsp; mimetypes = ['application / json "]
& Nbsp; def maken (zelf, obj):
& Nbsp; return json.dumps (obj)
klasse HTMLFormatter (Formatter):
& Nbsp; format = "json"
& Nbsp; mimetypes = ['text / html']
& Nbsp; def configureren (zelf, sjabloon):
& Nbsp; self.template = template
& Nbsp; def maken (zelf, obj):
& Nbsp; terug maken (self.template, ** obj)
# Dan, bij het bouwen van de applicatie, versieren we de functie weergave met de
# "Onderhandelen" decorateur, een opsomming van de formaten waarin deze visie is beschikbaar.
van negotiate.flask import onderhandelen
@ App.route ('/ berichten / ')
@ App.route ('/ berichten / . ')
negotiate (JSONFormatter)
negotiate (HTMLFormatter, template = 'post.html')
def view_post (id, format = Geen):
& Nbsp; na = Posts.by_id (id)
& Nbsp; als bericht is Geen:
& Nbsp; af te breken (404)
& Nbsp; zo niet g.user.authorize ('gelezen', post):
& Nbsp; af te breken (401)
& Nbsp; return {'post': post}
Het resultaat is een actie van mening dat een HTML-versie van de post zal terugkeren standaard (dwz met Accept: * / * en geen expliciete formaat), of als de extensie .html expliciet wordt vermeld, of een JSON-versie van de post als het .json uitbreiding wordt gegeven of Accepteren: application / json wordt met het verzoek verzonden.
Ondersteuning
onderhandelen momenteel ondersteunt Kolf en pylonen, hoewel het toevoegen van ondersteuning voor andere web frameworks vrij eenvoudig moeten zijn. Neem een ​​kijkje op onderhandelen / flask.py en onderhandelen / pylons.py de kleine hoeveelheid van de integratie-code vereist zien

Eisen .

  • Python

Andere software van ontwikkelaar Nick Stenning

Honcho
Honcho

20 Feb 15

envmgr
envmgr

20 Feb 15

imaprelay
imaprelay

14 Apr 15

Reacties op negotiate

Reacties niet gevonden
Commentaar toe te voegen
Zet op de beelden!