在本章中,我们将重点讨论如何在CherryPy框架中创建应用程序。
考虑一下CherryPy演示应用程序的Photoblog应用程序。Photoblog应用程序是一个普通的blog,但是主要的文本是照片而不是文本。Photoblog应用程序的主要特点是开发人员可以更加专注于设计和实现。
Basic Structure – Design of Entities
实体设计应用程序的基本结构。以下是Photoblog应用程序的实体;
- Film
- Photo
- Album
下面是实体关系的基本类图−
Design Structure
如前一章所述,项目的设计结构如下截图所示;
考虑给定的应用程序,它有Photoblog应用程序的子目录。子目录是Photo、Album和Film,其中包括controllers.py、models.py和server.py。
从功能上讲,Photoblog应用程序将提供api,通过传统的CRUD接口(Create、Retrieve、Update和Delete)来操作这些实体。
Connection to the Database
存储模块包括一组操作;与数据库的连接是操作之一。
由于它是一个完整的应用程序,与数据库的连接对于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())
上面代码中的竞技场将是底层存储管理器和业务逻辑层之间的接口。
connect函数将存储管理器添加到PostgreSQL RDBMS的arena对象中。
一旦获得连接,我们就可以根据业务需求创建表单并完成应用程序的工作。
在创建任何应用程序之前,最重要的是实体映射和设计应用程序的结构。