跳转到主要内容

Zope Web框架

项目描述

BlueBream

简介

BlueBream – 曾被称为 Zope 3 – 是用Python编程语言编写的Web框架。

BlueBream是免费/开源软件,由 Zope基金会 拥有,根据 Zope公共许可证 (类似BSD,兼容GPL的许可证) 许可。

特性

以下是区分BlueBream与其他Python Web框架的特点

  • BlueBream建立在 Zope工具包 (ZTK) 之上,ZTK拥有多年的经验,证明它符合稳定、可扩展软件的严格要求。

  • BlueBream使用强大的、熟悉的用Python编写的Buildout构建系统。

  • BlueBream采用Zope对象数据库ZODB,这是一个事务性对象数据库,提供极强且易于使用的持久化功能。

  • BlueBream使用Zope组件标记语言(ZCML)注册组件,这是一种基于XML的配置语言,提供无限的灵活性。

  • BlueBream具有Zope组件架构(ZCA),它实现了关注点分离,以创建高度内聚且可重用的组件(zope.component)。

  • BlueBream借助PasteDeploy实现了WSGI规范(Web服务器网关接口)。

  • BlueBream包含一些经过良好测试的组件以实现常见活动。其中一些是

安装

如果您已安装setuptoolsdistribute,则将可用easy_install命令。然后,您可以使用以下easy_install命令安装BlueBream

$ easy_install bluebream

需要互联网访问PyPI以执行BlueBream的安装。

bluebream发行版提供基于PasteScript模板的快速项目创建工具。一旦BlueBream安装完成,运行paster命令以创建项目目录结构。paster提供的create子命令将显示向导以创建项目目录结构。

$ paster create -t bluebream

这将启动一个向导,要求您提供有关新项目的一些详细信息。如果您提供包名和版本号,您将得到一个可进一步修改的工作应用程序。项目名称将用作egg名称。您也可以稍后更改提供的值。

可以将项目名称作为命令行参数提供

$ paster create -t bluebream sampleproject

您可以使用点分名称,以便包在命名空间中创建,有任意多的级别,例如“sample.main”或“sample.app.main”。这将导致嵌套结构,允许您将大型项目分割成几个包。

如果您在命令行中提供选项,则向导不会提示。以下变量给出,如果需要,您可以从命令行提供值

  • interpreter – 自定义Python解释器的名称

  • bluebream – BlueBream的版本

  • version – 您项目的版本(例如:0.1)

  • description – 包的一行描述

  • long_description – 多行描述(在reStructuredText中)

  • keywords – 空格分隔的关键字/标签

  • author – 作者姓名

  • author_email – 作者电子邮件

  • url – 主页的URL

  • license_name – 许可证名称

如果您很着急,您可以直接按Enter/Return键,稍后再更改值。但提供一个好的项目名称会更好。

使用

生成的包包含了Buildout配置和Buildout引导脚本(bootstrap.py)。首先,您需要引导Buildout本身

$ cd sampleproject
$ python bootstrap.py

引导脚本将安装zc.buildoutdistribute包。同时,它还将创建基本的目录结构。下一步是构建应用程序。要构建应用程序,请运行buildout

$ ./bin/buidout

buildout脚本将下载所有依赖项,并设置运行您的应用程序的环境。

在开发应用程序时,您最常见的需求之一是运行服务器。BlueBream使用PasteScript提供的paster命令来运行WSGI服务器。要运行服务器,可以将PasteDeploy配置文件作为serve子命令的参数,如下所示

$ ./bin/paster serve debug.ini

一旦运行了服务器,您就可以从这里访问它:http://localhost:8080/。端口号(8080)可以从PasteDeploy配置文件(debug.ini)中更改。

其次最常见的事情可能是运行测试用例。BlueBream使用Buildout的zc.recipe.testrunner配方创建测试运行器。您可以在bin目录中看到一个test命令。要运行测试用例,只需运行此命令

$ ./bin/test

有时您可能想获取调试外壳。BlueBream提供了一个带有您的应用程序对象的Python提示。您可以像这样调用调试外壳

$ ./bin/paster shell debug.ini

有关测试运行器和调试外壳的更多信息,将在BlueBream手册中解释。您可以从文档网站继续了解BlueBream。

资源

变更日志

1.0 (2011-01-18)

  • 从site.zcml文件中包含zope.locationzope.keyreferencezope.intidzope.contentproviderzope.i18n

  • 重新组织zcml文件(用于部署、调试和测试)

  • 更新到ZTK 1.0.1

1.0b4 (2010-08-26)

  • 更改自定义解释器名称:s/breampy/bbpy

  • 修复了生成的buildout,并使其可重复

  • 添加了“extends-cache”Buildout选项,用于缓存扩展配置文件

  • 如果项目模板有重大更改,则提醒用户

  • 添加了空的overrides.zcml - 向开发者展示最佳实践

  • 更新到ZTK 1.0a3

  • 自动在线查找并建议最新次要版本

  • 添加了zope.app.http注册,以获取正确的未经授权视图

1.0b3 (2010-07-11)

  • 直接依赖ZTK!

  • 删除了bbkit包

  • 在项目创建时询问BlueBream的版本

  • 自动在线查找并建议最新版本

1.0b2 (2010-06-30)

  • 从site.zcml中包含zope.error & zope.principalregistry

1.0b1 (2010-04-27)

  • 为示例应用程序设置name & description

  • 在基本模板中使用项目名称作为i18n_domain

  • 通过允许创建平面或嵌套命名空间结构,并将包名称合并为单个模板

  • 默认启用Distribute而不是Setuptools

  • 添加了zope.app.schema注册,以便能够注册命名词汇表

  • 移除了buildout模板,并包含两个zope.conf文件,一个用于部署,一个用于调试(devmode)。

1.0a5 (2010-03-28)

  • bluebream_simple模板中包含示例应用。

  • 将蓝bream模板提供的示例应用移至名为welcome的子包中,类似于bluebream_simple。示例应用可以被轻松移除。

  • 示例应用对象使用‘zope.site.interfaces.IFolder`而不是zope.container.interfaces.IContainer

  • site.zcml中包含zope.session

  • 为了方便,在site.zcml中包含browser命名空间。

  • versions.cfg中添加一个空的[versions]部分,并建议固定其他依赖项的版本。

  • 从依赖列表中移除zope.app.twisted

  • 由于BlueBream需要ZODB 3.9,FileStorage不需要用BlobStorage代理包装即可获得ZODB blob支持。

  • 默认ZODB blob布局应为‘bushy’。修复LP #543525。

  • 在etc/zope.conf中使用相对路径。修复LP #543451。

  • 在ftesting.zcml中指定i18n域。修复LP #543516。

  • 缺少zope.browserresource包的注册。修复LP #541457。

1.0a4 (2010-03-07)

  • 添加了一个空的PKG-INFO,作为解决“空目录”问题的替代方案。(参考:LP #503301)

1.0a3 (2010-03-07)

1.0a2 (2010-03-02)

  • 使用模板显示根文件夹的默认页面。

  • 使用zope.formlib.form.DisplayForm作为视图的基础类,而不是zope.publisher.browser.BrowserView

  • 示例应用的表单视图名称从@@add更改为@@add_sample_app

  • 添加到BlueBream网站和邮件列表的链接。

  • 添加了许可文件。

  • 改进README.txt中的“用法”部分。

  • 包含zest.release以准备发布。

  • 包含bluebream_simple模板(这不会与1.0a2一起发布,因为文档尚未准备好)。

  • 将蓝bream模板代码移至bluebream_base

  • 将包含CSS的静态资源目录添加到bluebream_base(基于bluebream_simple)。新样式应用于主页。

1.0a1 (2010-02-06)

0.1.9 (2010-01-13)

  • LP #506879:添加了调试shell。基本用法

    ./bin/paster shell debug.ini

0.1.8 (2010-01-12)

  • 在configure.zcml中将默认的ZCML命名空间设置为zope

  • 改进文档。

  • 默认创建一个示例应用。

0.1.7 (2010-01-10)

  • 更新版本:zope.tales = 3.5.0

  • LP #505362:修复。主包名硬编码为‘main’

  • 更改‘defaultView’注册位置和接口。

  • LP #505413:默认自定义Python解释器的名称应该可以自定义

0.1.6 (2010-01-07)

  • LP #502819:新鲜安装后的主页

  • 从模板中移除了hello视图。

  • LP #502941:添加trove分类器。

  • 在PyPI页面上提到所有资源。

0.1.5 (2010-01-07)

  • LP #503388:“namespace_package”的值不应该为空字符串。

  • 更新描述,添加推广视频。

0.1.4 (2010-01-04)

  • LP #503301:解决“空目录”问题的替代方案。

  • 将作者改为“BlueBream”团队,并将电子邮件地址更改为zope-dev列表。

0.1.3 (2010-01-04)

  • LP #502817:变量目录及其子目录不存在

  • 文档改进:添加了“使用”章节

0.1.2 (2010-01-03)

  • 为项目添加了功能测试支持

  • 基于 Sphinx 的文档基础设施改进

  • LP #502529:更新向导以在 setup.py 中请求更新所有包元数据

0.1.1 (2010-01-02)

  • 修复缺失的包数据。0.1.0 版本已损坏。

  • 改进文档。

0.1.0 (2010-01-02)

  • 初始发布。

下载

项目详情


下载文件

下载适用于您平台文件的文件。如果您不确定选择哪个,请了解有关 安装包 的更多信息。

源分布

bluebream-1.0.tar.gz (42.6 kB 查看哈希值)

上传时间

由以下支持