-1

我正在使用 Flask 和 CouchDB。我已将文件文档映射到文件对象。

class File(Document):
   name = TextField()
   conten = TextField()

在我的 Flask Blueprint 中,我想返回所有文件。我怎么做。我知道我必须编写如下视图:

function(doc) {
   if(doc.type == 'file') {
      emit(doc_id, doc)
   }
}

但是我要把这段代码放在哪里呢?在我的File对象中?我是否必须将此视图定义添加到CouchDBManager?还是应该使用查询功能?

4

1 回答 1

0

请勿使用查询功能,该功能仅用于临时视图,即不用于生产用途。相反,您应该创建一个 ViewDefinition 类的对象并将该对象传递给 CouchDBManager.add_viewdef 方法。这在http://pythonhosted.org/Flask-CouchDB/#writing-views上有更详细的描述。

或者,您可以直接使用 CouchDB http 接口上传设计文档。由于您只需创建一次视图,这仍然是可行的。实际上,您将打开被褥http://localhost:5984/_utils并使用数据库中的视图创建一个设计文档。有关http://guide.couchdb.org/draft/design.html的更多信息。

于 2013-04-10T09:18:24.700 回答