用于快速金字塔开发的粘贴模板集
khufu_opinion的Python项目详细描述
简介
khufu_opinion是一组用于快速金字塔开发的粘贴模板。它 为开发人员提供以下几种框架选择:
- Pyramid for the underlying web framework
- traversal based url routing
- Jinja2 for the page template language (similar to Django templates)
- SQLAlchemy for ORM-based relational database persistence
重要网址
- Source Control - https://github.com/serverzen/khufu_opinion
- PyPi Entry - http://pypi.python.org/pypi/khufu_opinion
设置新项目
使用 贴纸。完成后,您可以创建一个新的胡夫意见项目 只需运行(其中something是新鸡蛋的名称):
paster create -t khufu_starter Something
一旦模板蛋被创建,你应该在开发中设置它 开始处理项目的模式。
cd Something python setup.py develop
使用新项目
命令行程序
默认情况下,名为something-manage的新脚本将在^{tt2}中创建$ python环境的目录。这个脚本是一个命令 提供以下功能的跑步者:
Commands: runserver Run a reloadable development web server. loaddata Add data based on the YAML from filename shell Launch a Python shell syncdb Ensure all database tables exist
贴纸
将在something 目录这可以与标准的paster命令一起使用:
# use builtin paster http server paster serve development.ini
使用apache+mod_wsgi进行部署
有一个预配置的Something.wsgi文件生成 是将应用程序插入mod_wsgi环境所必需的。
一个简单的apache virtualhost条目如下:
<VirtualHost *:80> ServerName www.something.com WSGIScriptAlias / /path/to/Something.wsgi </VirtualHost>
与新项目一起开发
基本框架
胡夫的意见是基于Pyramidweb应用程序 框架。因此,Pyramidapi将始终是 使用web应用程序的go-to api。拜托 有关详细信息,请参见Pyramid docs。
模板化
任何以.jinja2扩展名结尾的文件都位于 Something/something/templates目录将使用 模板系统。此模板语言是 基于django模板语言。
khufu_opinion默认生成两个模板文件,其中一个包含 整个布局名为,layout.jinja2,一个用于默认的main 已调用页,main.jinja2。
数据访问
所有数据访问都由SQLAlchemyORM框架处理,该框架包装 关系数据库。开箱即用,任何由胡夫舆论创造的新项目 将有一个SQLAlchemy数据库会话工厂设置。
khufu-opinion将orm模型类放在models.pypython中 文件。活动数据库会话始终可以作为^{tt11}检索$ request对象的属性。
事务支持
事务用于确保执行全部或不执行任何操作。与 非常有用的金字塔,repoze.tm2,和transaction包 在Pyramid应用程序中容易完成。
khufu_opinion确保所有请求都加入新的事务,以便 如果发生任何错误/异常,事务将自动 后退。通过提供的会话创建的任何数据库会话 工厂自动加入此事务并将回滚 如果发生错误。
横向
Pyramidweb应用程序框架提供了一种方便的机制 遍历一个对象图并将该图映射到url的khufu_opinion stores 它是resources.py文件中的遍历机制。
学分
- Created and maintained by Rocky Burt (rocky AT serverzen DOT com)
更改
0.5-2011年5月14日
- Now uses khufu_script
- ^{tt14}$ module is now ^{tt15}$
0.2.2-2011年2月20日
- Renamed from RapidGiza to khufu_opinion
0.2.1-2011年2月16日
- Updated url’s to point to github repo
0.2-2011年2月5日
- switched from Werkzeug to Khufu-Script
- now using Khufu-SQLAHelper
0.1.4-2010年12月1日
- yet another missing file (won’t happen again)
0.1.3-2010年11月30日
- Added yet another missing file to MANIFEST.in
0.1.2-2010年11月29日
- Changed ^{tt16}$ signature
- Added development.ini for out-of-the-box use with Paster serve
- Generated projects now include two Paster apps
- <<project>>:app - Web app with included middleware
- <<project>>:pyramid-app - Web app without middleware
0.1.1-2010年11月29日
- Fixed MANIFEST.in so sdist contains appropriate files
0.1-2010年11月29日
- Initial version