如何使用cloudant创建视图

问题描述 投票:-1回答:1

在文档中,https://python-cloudant.readthedocs.io/en/latest/database.html展示了如何创建create_documents和数据库,但没有展示如何创建视图

有人能帮助我吗?我正在使用cloudant与python(Flask)......

class TestContext(unittest.TestCase):
def setUp(self):
    self.client_couchdb = CouchDB(
        user='admin',
        auth_token='token123',
        url='https://couchbk.123',
        connect=True
    )

    self.doc_test = {
        '_id': 'julia102',
        'name': 'Julia',
        'age': 30,
        'type': 'event'
    }

    self.db = self.client_couchdb.create_database('test')
    self.db.create_document(self.doc_test)
python flask couchdb python-cloudant
1个回答
0
投票

感谢Alexis https://stackoverflow.com/users/5236185/alexis-c%C3%B4t%C3%A9

这是正确的解决方案:

https://python-cloudant.readthedocs.io/en/latest/design_document.html#cloudant.design_document.DesignDocument.add_view

那是肮脏的解决方案

    self.new_view = {
        '_id': '_design/myname',
        '_rev': 'rev-code',
        'views': {
            'by_client': {
                'map': '''function (doc) {\nif(
                    doc.type === "myname" && doc.client_id
                ){\nemit(doc.client_id);\n}\n}
            '''
            }
        },
        'language': 'javascript'
    }

    # create new view like a doc
    self.db.create_document(self.new_view)
© www.soinside.com 2019 - 2024. All rights reserved.