CherryPy - Aplikasi Demo
Pada bab ini, kita akan fokus pada bagaimana sebuah aplikasi dibuat dalam framework CherryPy.
Mempertimbangkan Photoblogaplikasi untuk aplikasi demo CherryPy. Aplikasi Photoblog adalah blog biasa tetapi teks utamanya adalah foto sebagai pengganti teks. Kelebihan utama aplikasi Photoblog adalah pengembang dapat lebih fokus pada desain dan implementasi.
Struktur Dasar - Desain Entitas
Entitas merancang struktur dasar aplikasi. Berikut entitas untuk aplikasi Photoblog -
- Film
- Photo
- Album
Berikut ini adalah diagram kelas dasar untuk hubungan entitas -
Struktur Desain
Seperti yang dibahas di bab sebelumnya, struktur desain proyek akan seperti yang ditunjukkan pada tangkapan layar berikut -
Pertimbangkan aplikasi yang diberikan, yang memiliki sub-direktori untuk aplikasi Photoblog. Sub-direktori adalah Foto, Album, dan Film yang akan menyertakan controllers.py, models.py dan server.py.
Secara fungsional, aplikasi Photoblog akan menyediakan API untuk memanipulasi entitas tersebut melalui antarmuka CRUD tradisional - Buat, Ambil, Perbarui, dan Hapus.
Koneksi ke Database
Modul penyimpanan mencakup serangkaian operasi; koneksi dengan database menjadi salah satu operasi.
Karena ini adalah aplikasi yang lengkap, koneksi dengan database adalah wajib untuk API dan untuk memelihara fungsionalitas dari Buat, Ambil, Perbarui, dan Hapus.
import dejavu
arena = dejavu.Arena()
from model import Album, Film, Photo
def connect():
conf = {'Connect': "host=localhost dbname=Photoblog user=test password=test"}
arena.add_store("main", "postgres", conf)
arena.register_all(globals())
Arena dalam kode di atas akan menjadi antarmuka antara manajer penyimpanan yang mendasari dan lapisan logika bisnis.
Fungsi menghubungkan menambahkan manajer penyimpanan ke objek arena untuk RDBMS PostgreSQL.
Setelah koneksi diperoleh, kami dapat membuat formulir sesuai kebutuhan bisnis dan menyelesaikan pengerjaan aplikasi.
Hal terpenting sebelum membuat aplikasi apa pun adalah entity mapping dan mendesain struktur aplikasi.