- CherryPy 教程
- CherryPy - 首頁
- CherryPy - 簡介
- CherryPy - 環境設定
- CherryPy - 詞彙表
- 內建HTTP伺服器
- CherryPy - 工具箱
- CherryPy - 一個可執行的應用程式
- CherryPy - Web服務
- CherryPy - 表現層
- CherryPy - Ajax 的使用
- CherryPy - 演示應用程式
- CherryPy - 測試
- 應用程式部署
- CherryPy 有用資源
- CherryPy - 快速指南
- CherryPy - 有用資源
- CherryPy - 討論
CherryPy - 演示應用程式
本章將重點介紹如何在 CherryPy 框架中建立應用程式。
考慮使用Photoblog應用程式作為 CherryPy 的演示應用程式。Photoblog 應用程式是一個普通的部落格,但主要文字將由照片代替文字。Photoblog 應用程式的主要優勢在於開發者可以更專注於設計和實現。
基本結構 – 實體設計
實體設計了應用程式的基本結構。以下是 Photoblog 應用程式的實體:
- 膠捲 (Film)
- 照片 (Photo)
- 相簿 (Album)
以下是實體關係的基本類圖:
設計結構
正如上一章所述,專案的結構設計如下截圖所示:
考慮給定的應用程式,它具有 Photoblog 應用程式的子目錄。子目錄為 Photo、Album 和 Film,其中包含 controllers.py、models.py 和 server.py。
從功能上講,Photoblog 應用程式將提供 API,透過傳統的 CRUD 介面(建立、檢索、更新和刪除)來操作這些實體。
資料庫連線
儲存模組包含一組操作;與資料庫連線是其中一項操作。
作為一個完整的應用程式,與資料庫的連線對於 API 和維護建立、檢索、更新和刪除的功能是必需的。
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 將是我們底層儲存管理器和業務邏輯層之間的介面。
connect 函式為 PostgreSQL RDBMS 向 arena 物件添加了一個儲存管理器。
一旦獲得連線,我們就可以根據業務需求建立表單並完成應用程式的執行。
在建立任何應用程式之前,最重要的事情是實體對映和設計應用程式的結構。
廣告