CherryPy - Demo Uygulaması

Bu bölümde, CherryPy çerçevesinde bir uygulamanın nasıl oluşturulduğuna odaklanacağız.

Düşünmek PhotoblogCherryPy'nin demo uygulaması için uygulama. Bir Photoblog uygulaması normal bir blogdur ancak ana metin, metin yerine fotoğraflar olacaktır. Photoblog uygulamasının ana yakalaması, geliştiricinin tasarım ve uygulamaya daha fazla odaklanabilmesidir.

Temel Yapı - Varlıkların Tasarımı

Varlıklar bir uygulamanın temel yapısını tasarlar. Aşağıdakiler, Photoblog uygulamasının varlıklarıdır -

  • Film
  • Photo
  • Album

Aşağıdaki, varlık ilişkisi için temel bir sınıf diyagramıdır -

Tasarım Yapısı

Önceki bölümde tartışıldığı gibi, projenin tasarım yapısı aşağıdaki ekran görüntüsünde gösterildiği gibi olacaktır -

Photoblog uygulaması için alt dizinleri olan verilen uygulamayı düşünün. Alt dizinler, controllers.py, models.py ve server.py'yi içeren Fotoğraf, Albüm ve Film'dir.

İşlevsel olarak, Photoblog uygulaması, bu varlıkları geleneksel CRUD arabirimi - Oluşturma, Alma, Güncelleme ve Silme yoluyla değiştirmek için API'ler sağlayacaktır.

Veritabanına Bağlantı

Bir depolama modülü, bir dizi işlemi içerir; veritabanıyla bağlantı işlemlerden biri.

Tam bir uygulama olduğu için, API için veritabanıyla bağlantı ve Oluşturma, Alma, Güncelleme ve Silme işlevlerini sürdürmek için zorunludur.

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())

Yukarıdaki koddaki alan, temeldeki depolama yöneticisi ile iş mantığı katmanı arasındaki arayüzümüz olacaktır.

Connect işlevi, bir PostgreSQL RDBMS için arena nesnesine bir depolama yöneticisi ekler.

Bağlantı sağlandıktan sonra iş gereksinimlerine göre formlar oluşturabilir ve uygulama çalışmasını tamamlayabiliriz.

Herhangi bir uygulama oluşturmadan önce en önemli şey entity mapping ve uygulamanın yapısının tasarlanması.