neuvotella on fiksu, yksinkertainen sisältöneuvottelua Python web-sovelluksia.
Sisältö neuvottelu voi olla vaikea tehdä hyvin. Ihannetapauksessa koodi tulee olla kuiva, ja sinulla ei olisi toistaa samaa vanhaa boilerplate usean kuvan menetelmiä, jotta päästää saman toimialueen objektin eri muodoissa. neuvotella auttaa tehdä elämästäsi entistä helpompaa, sillä voit koristella mieltä menetelmiä muotoilijat, joka automaattisesti kääntää verkkotunnuksen esineitä muodon on asiakas.
Se on todella helppo käyttää. Toivottavasti tämä esimerkki (varten Taskumatti sovellus) tekee pääkohdat selvä:
# Ensin kirjoittaa pari muotoilijat, jotka määrittävät, miten kääntää
# Lähtö mieltä funktion tietyssä muodossa. Täällä me määrittelemme
# JSON formatoija ja HTML formatter joka vie mallin parametri.
alkaen negotiate.flask tuonti alustusohjelma
luokan JSONFormatter (alustusohjelma):
& Nbsp; format = "json '
& Nbsp; mimetypes = ['application / JSON "]
& Nbsp; def renderöinti (itse, obj):
& Nbsp; paluu json.dumps (obj)
luokan HTMLFormatter (alustusohjelma):
& Nbsp; format = "json '
& Nbsp; mimetypes = ['text / html "]
& Nbsp; def määrittää (itse, mallin):
& Nbsp; self.template = mallin
& Nbsp; def renderöinti (itse, obj):
& Nbsp; palata renderöinti (self.template, ** obj)
# Sitten kun rakennus sovellus, me koristella näkymä toiminto
# "Neuvotella" sisustaja, jossa luetellaan, missä muodossa tämä näkymä on käytettävissä.
alkaen negotiate.flask tuonti neuvotella
@ App.route ('/ viestiä /
@ App.route ('/ viestiä /
negotiate (JSONFormatter)
negotiate (HTMLFormatter, malli = 'post.html')
def view_post (id, format = Ei mitään):
& Nbsp; post = Posts.by_id (id)
& Nbsp; jos viesti on mitään:
& Nbsp; keskeytä (404)
& Nbsp; jos ei g.user.authorize ("lukemaan", post):
& Nbsp; keskeytä (401)
& Nbsp; paluu {"post": post}
Tuloksena on näkymä toiminta, joka palauttaa HTML-versio kentältä oletuksena (eli Accept: * / * mitään nimenomaisia muodossa), tai jos .html käyttää nimenomaisesti tai JSON versio post jos .json laajennus on annettu tai Hyväksy: application / json lähetetään pyynnöstä.
Tuki
neuvotella tukee tällä hetkellä taskumatti ja Pylväät, vaikka tuen lisääminen muihin web puitteiden pitäisi olla aika helppoa. Vilkaise neuvotella / flask.py ja neuvotella / pylons.py nähdä pieni määrä integraation koodia tarvitaan.
Vaatimukset :
- Python
Kommentteja ei löytynyt