Peewee中文文档【一】:安装与测试

写在最前面的一些话:

第一次尝试翻译英语技术文档,比较具有挑战性。本来是计划和同事一起翻译,但是因为人事变故,只剩下我一个人在继续。如果您发现翻译有任何不当的地方,请及时地指正。如果你觉得文档翻译得还不错,对您有帮助,麻烦您点个赞或者给个好评。

截至译者翻译开始,peewee最新版本号为:2.10.1。英文文档传送门: 点此

大部分的用户想要通过pip简单的安装托管在PyPI的最新版本:

pip install peewee

Peewee包含两个可以被编译的C扩展库:

  • Speedups她包含通过Cython重新实施的各种各样方法,如果你安装了Cython那么她可以自动被添加到库。

  • Sqlite extensions她包含Cypthon
    SQlite日期操作函数的实现,正则运算,和全文搜索排序算法。这个模块可以通过命令build_sqlite_ext添加。

通过Git安装

这个项目托管在https://github.com/coleifer/peewee,所以你可以通过git安装:

git clone https://github.com/coleifer/peewee.git
cd peewee
python setup.py install

如果你想在git checkout里添加SQLite extension,你可以运行

# 构建sqlite扩展,并将共享库与其他模块一起放置。
 python setup.py build_sqlite_ext -i

备注:


在一些系统上,你可能需要运行sudo python setup.py install来安装peewee。


执行测试

你可以通过执行测试套件来测试你的安装是否正常。

setup.py test  # 或者执行:python runtests.py

默认情况下,测试套件是通过SQLite来运行,而playhouse扩展测试却没有运行。要查看运行测试可用选项可以用过执行:

python runtests.py --help

可选依赖关系

备注:


为使用peewee,你不需要任何额外的标准库,因为大部分的python发布版本都支持SQLite的编译。你可以通过在python控制台执行命令import
sqlite3来测试。如果你想使用其他的数据库,有许多DB-API
2.0-compatible驱动,比如MySQL的pymysql和postgres的psycopg2。


  • Cypthon:用于各种speedups。特别是在你使用SQLite时,可以极大的加速某些操作。 -
    apsw:可选的绑定SQLite第三方库,比标准库pysqlite具有更高的性能和更多更加清晰的语义,与APSWDatabase配合使用。

  • pycrypto:用于AESEncryptedField. -
    bcrypt模块用于PasswordField. -
    vtfunc[ http://github.com/coleifer/sqlite-vtfunc
    ]用于为SQLite提供一些表值函数作为sqlite_udf扩展模块的一部分。

  • gevent是SqliteQueueDatabase一个可选的依赖(虽然她很适用于threading) -
    BerkeleyDB:她与peewee一起使用可以编译一个SQLite前端。编译可能很棘手,所以可以看这里说明。