1
我知道我可以使用couchdb.ViewDefinition为数据库创建一个视图。是否有类似的东西来创建更改过滤器函数,或者我可以使用filters字段创建一个设计文档?如何用python在couchdb中添加过滤器函数?
我知道我可以使用couchdb.ViewDefinition为数据库创建一个视图。是否有类似的东西来创建更改过滤器函数,或者我可以使用filters字段创建一个设计文档?如何用python在couchdb中添加过滤器函数?
目前没有这样的东西,除非您将设计文档作为例行的例子来操作,例如,将python函数转储到源代码并将其分配给ddoc过滤器字段。
您可以尝试应用issue 186的补丁:它以视图当前的方式为定义show/list/update/filter/validate_doc_update函数提供支持。
例如:
from couchdb import design, mapping
class Post(mapping.Document):
by_author = design.FilterFunction('posts', 'by_name', '''
function(doc, req){
if (req.query.author){
return doc.author === req.query.author;
}
throw({'invalid_query': 'author name was not specified'});
}
''')
if __name__ == '__main__:
design.sync_docs(db, [Post])
反馈和错误都欢迎(:
我使用在生产server.Do CouchDB的你认为是足够稳定,使用它,或者我应该使用常规的创建文件的方式? – vkefallinos 2013-04-10 10:30:48
不确定,所以我想建议你在生产环境中应用之前先测试它。为了更好地使用ddocs和常规文档一起工作,甚至切换到[couchapp](https:// pypi.python.org/pypi/Couchapp)或[erica](https://github.com/benoitc/erica)工具w ith ddocs。 – Kxepal 2013-04-10 14:28:24