negotiate

Software screenshot:
negotiate
Rincian Software:
Versi: 0.0.1
Tanggal Upload: 14 Apr 15
Pengembang: Nick Stenning
Lisensi: Gratis
Popularitas: 2

Rating: nan/5 (Total Votes: 0)

bernegosiasi adalah cerdas, negosiasi konten yang sederhana untuk aplikasi web Python.
Konten negosiasi bisa sulit untuk melakukannya dengan baik. Idealnya, kode Anda harus DRY, dan Anda tidak akan mengulangi boilerplate lama yang sama dalam beberapa metode tampilan untuk memancarkan objek domain yang sama dalam format yang berbeda. bernegosiasi membantu membuat hidup Anda lebih mudah dengan memungkinkan Anda untuk menghias metode pandangan Anda dengan formatters yang secara otomatis menerjemahkan benda domain Anda ke dalam format yang diminta oleh klien.
Ini benar-benar mudah digunakan. Semoga contoh ini (untuk aplikasi Flask) membuat poin utama yang jelas:
# Pertama, kita menulis beberapa formatters yang menentukan bagaimana menerjemahkan
# Output fungsi tampilan ke dalam format tertentu. Di sini kita mendefinisikan
# JSON formatter dan formatter HTML yang mengambil parameter template.
dari negotiate.flask impor Formatter
Kelas JSONFormatter (Formatter):
& Nbsp; format = 'json'
& Nbsp; mimetypes = ['application / json']
& Nbsp; def membuat (self, obj):
& Nbsp; kembali json.dumps (obj)
kelas HTMLFormatter (Formatter):
& Nbsp; format = 'json'
& Nbsp; mimetypes = ['text / html "]
& Nbsp; def mengkonfigurasi (self, template):
& Nbsp; self.template = Template
& Nbsp; def membuat (self, obj):
& Nbsp; kembali render (self.template, ** obj)
# Kemudian, ketika membangun aplikasi, kita menghias fungsi tampilan dengan
# "Bernegosiasi" dekorator, daftar format di mana pandangan ini tersedia.
dari negotiate.flask impor bernegosiasi
@ App.route ('/ posts / ')
@ App.route ('/ posts / . ')
negotiate (JSONFormatter)
negotiate (HTMLFormatter, Template = 'post.html')
def view_post (id, format = None):
& Nbsp; post = Posts.by_id (id)
& Nbsp; jika posting adalah None:
& Nbsp; batalkan (404)
& Nbsp; jika tidak g.user.authorize ('membaca', pos):
& Nbsp; batalkan (401)
& Nbsp; kembali {'post': post}
Hasilnya adalah tindakan tampilan yang akan kembali versi HTML posting secara default (yaitu dengan Accept: * / * dan tidak ada format eksplisit), atau jika ekstensi .html secara eksplisit ditentukan, atau versi JSON posting jika ekstensi .json diberikan atau Accept: application / json dikirim dengan permintaan.
Dukungan
bernegosiasi saat ini mendukung Flask dan pylons, meskipun menambahkan dukungan untuk kerangka web lainnya harus cukup mudah. Silahkan lihat di bernegosiasi / flask.py dan bernegosiasi / pylons.py untuk melihat jumlah kecil kode integrasi diperlukan

Persyaratan :.

  • Python

Perangkat lunak lain dari pengembang Nick Stenning

imaprelay
imaprelay

14 Apr 15

envmgr
envmgr

20 Feb 15

Honcho
Honcho

20 Feb 15

Komentar untuk negotiate

Komentar tidak ditemukan
Tambahkan komentar
Aktifkan gambar!