Python couchdb工具包
项目描述
关于couchdbkit的jsonobject分支
jsonobject-couchdbkit是couchdbkit的一个分支,用jsonobject(巧合的是,它被写为一个比couchdbkit.schema更快的替代品)的轻量级包装代替了couchdbkit.schema。参见jsonobject。
关于
Couchdbkit为您提供了一个功能齐全且易于使用的客户端,用于访问和管理CouchDB。它允许您管理CouchDB服务器、数据库、文档管理和视图访问。所有对象大多数都反映了Python对象以方便使用。服务器和数据库对象可以用作,例如,就像使用字典一样简单。
安装
Couchdbkit需要Python 2.x,版本高于2.6。
要使用pip安装couchdbkit,您必须确保您已安装了较新的distribute版本
$ curl -O http://python-distribute.org/distribute_setup.py $ sudo python distribute_setup.py $ easy_install pip
要安装或升级到couchdbkit的最新发布版本
$ pip install couchdbkit
开始使用
本教程主要通过代码示例展示了该库的关键特性。如果您想深入了解模块,请阅读API文档。
编写您的第一个CouchDB文档
from couchdbkit import Server # server object server = Server() # create database db = server.get_or_create_db("greeting") doc = {"mydoc": "test"} db.save_doc(doc)
import datetime from couchdbkit import * class Greeting(Document): author = StringProperty() content = StringProperty() date = DateTimeProperty()
存储提交的问候语
以下是保存问候语到Greeting数据库的代码。我们还将展示如何创建数据库。
from couchdbkit import Server # associate Greeting to the db Greeting.set_db(db) # create a new greet greet = Greeting( author="Benoit", content="Welcome to couchdbkit world", date=datetime.datetime.utcnow() ) # save it greet.save()
您的文档greet现在已存储在greetings数据库中。每个文档都保存了一个doc_type字段,这使得您可以通过视图轻松找到每种类型的文档。默认情况下,doc_type是类的名称。
现在您的文档已保存,您可以更新它
greet.author = u"Benoit Chesneau" greet.save()
这里我们更新了作者名称。
动态属性
嗯,但CouchDB不是存储无模式的文档吗?您想添加一个属性吗?很简单
greet.homepage = "http://www.e-engura.org" greet.save()
现在您已向文档添加了homepage属性。
获取所有问候语
首先,您必须创建一个视图并将其保存到数据库中。我们将称它为greeting/all。为此,我们将使用couchdbkit的加载系统,该系统允许您将视图发送到CouchDB。
让我们创建一个包含设计文档的文件夹,然后创建视图的文件夹。在Unix系统中
mkdir -p ~/Work/couchdbkit/example/_design/greeting/views/all
在这个文件夹中,我们编辑一个文件map.js
function(doc) { if (doc.doc_type == "Greeting") emit(doc._id, doc); } }
以下是文件夹结构
/Work/couchdbkit/example/: --_design/ ---- greetings ------ view
以下是截图
将提供一套系统来管理视图创建和其他事项。正如有些人所注意到的,这个系统类似于couchapp,并且完全兼容。
然后我们使用push函数将设计文档发送到CouchDB
from couchdbkit.designer import push push('/path/to/example/_design/greetings', db)
设计文档现在已存储在greetings数据库中,您可以获取所有问候语
greets = Greeting.view('greeting/all')
项目详情
下载文件
下载适合您平台的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。
源分发
构建的发行版
jsonobject-couchdbkit-1.1.0.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 11d661140889df193b2c7070b44c0376498ee39b0a5fbde847a610a252368071 |
|
MD5 | e4e2fa821ecc22f890ce89349ddd6680 |
|
BLAKE2b-256 | 1a778e727c13d4e38c932c05be1784d48ec8c558d47f88a3786b3b3e73edf2c1 |
jsonobject_couchdbkit-1.1.0-py2.py3-none-any.whl 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 7c437d44d6a535ae6be83e30a5a7043677ecaf374cb89dc60139ee95de10877d |
|
MD5 | dc1429aa5751fa6535dbe6bebfcb961a |
|
BLAKE2b-256 | 812cdd1a66f829ceeae16db409352f24daa2e2817d7867a0b643819a4a116edb |