pyramid getting start


1 安裝pyramid

官方建議使用virtualenv安裝pyramid:

$ cd /path/to/your/virtual/env
$ virtualenv –no-site-packages pyramid
$ cd pyramid $ bin/pip install pyramid

安裝的東東比較多:

 
用途
pyramid web 框架
Chameleon 模板
Mako 另一個模板
WebOb WSGI 框架
repoze.lru cache支持
zope.interface ZCA的接口框架
zope.deprecation 實現“不建議使用”功能,可以用於模塊、類、函數、方法和屬性
venusian 延遲修飾(deferring decorator)功能
translationstring 國際化
PasteDeploy WSGI應用部署工具
MarkupSafe 標記語言支持

 

如果使用的是pyramid 1.3a7,還需要安裝waitress(Pylons項目下面的一個WSGI server):

$ bin/pip install waitress

 

2 創建工程

pyramid支持三種類型的工程模板:

 

 
工程模板 描述
starter 最基本的web框架
zodb 使用漫游(traversal)實現URL映射,並使用ZODB進行持久化
alchemy 使用URL dispatch實現URL映射,並使用SQLAlchemy進行持久化

如果使用過Zope,當然選擇zodb模板會比較熟悉,但如果不是,不妨嘗試一下alchemy,因為SQLAlchemy幾乎成了python ORM的事實標准。

使用alchemy工程模板創建工程,只需要執行命令:

$ pyramid/bin/pcreate -s alchemy MyProject

pyramid會創建如下的目錄結構和文件:

 

 

MyProject/
├── CHANGES.txt
├── MANIFEST.in
├── README.txt
├── development.ini
├── myproject
│   ├── __init__.py
│   ├── models.py
│   ├── scripts
│   │   ├── __init__.py
│   │   └── initializedb.py
│   ├── static
│   │   ├── favicon.ico
│   │   ├── footerbg.png
│   │   ├── headerbg.png
│   │   ├── ie6.css
│   │   ├── middlebg.png
│   │   ├── pylons.css
│   │   ├── pyramid-small.png
│   │   ├── pyramid.png
│   │   └── transparent.gif
│   ├── templates
│   │   └── mytemplate.pt
│   ├── tests.py
│   └── views.py
├── production.ini
├── setup.cfg
└── setup.py

 

 

先看一下MyProject/目錄,這是一個典型的python工程發布結構,其中的一些文件如下:

 
文件 說明
CHANGES.txt 變更說明,可以使用ReStructuredText格式
MANIFEST.in 裝箱文件,決定哪些代碼會被發布
README.txt 項目簡介,使用ReStructuredText 格式編寫。
development.ini PasteDeploy配置文件,用於開發階段
production.ini PasteDeploy配置文件,用於發布階段
setup.cfg和setup.py setuptools的配置文件和執行文件

如果需要對這個結構進行擴展,可以參考python開源項目目錄結構

 

在MyProject目錄下還會創建一個python package:myproject,這是放置Pyramid應用。如果用過Django,會發現這個目錄結構與Django的很像。簡單說明一下:

 

 
文件/目錄 說明
_init__.py Python package初始化腳本。Pyramid框架在其中放置了一個main函數,作為一些命令(如pserve,pshell,pviews等)的入口。
models.py 模型代碼。在使用alchemy工程模板時該文件包含了SQLAlchemy的基本代碼和一個model類的例子
scripts 開發用的一些腳本工具
static web靜態文件
templates 模板目錄
tests.py 單元測試代碼
views.py 視圖代碼

 

 

3 運行

運行需要三個步驟:測試、部署、運行

$ python setup.py test -q

$ python setup.py develop

$ pserve development.ini

如果是第一次運行web應用,可能還需要初始化數據庫:

$  initialize_MyProject_db development.ini

 

注:這里面的python、pserve和都是 /path/to/your/virtual/env/pyramid/bin 下面的腳本。

 

在用pserve運行后,可以從瀏覽器看到web應用了:http://0.0.0.0:6543


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM