我一直在学习Python并研究一些CouchDb教程。由于其他方法已关闭,因此获取由Couchdb托管的DbaaS的最新方法类似于Cloudant。
我在使用ouchdbkit进行本地开发方面取得了进展,该文件在模式包中有一个非常不错的DAO映射器,并且标准的ouchdb-python库还有一个“映射”模块,其工作原理非常类似。
我在cloudant库中找不到此功能-示例直接在操作JSON-是否已将其遗漏了?或者是否有经过批准的ODM库可供使用?
答案 0 :(得分:2)
听起来您真正要问的是“如何将json文档转换为我自己的Python类”。客户端库(对于Cloudant)的作用是抽象出样板HTTP和json编码内容,并为您提供漂亮的方法调用和json文档的本地表示(在Python中为dict
)。尤其是在Python中,鉴于其出色的requests
库和精巧的json处理,即使是大多数人,甚至也不会使用特定的客户端库。
将dict
转换为您自己创建的类并不难,也不需要库。 Python 3.7:
from dataclasses import dataclass
@dataclass
class Employee:
name: str
department: str
code: int
和
import requests
from employee import Employee
doc = requests.get("https://acc.cloudant.com/employees/bobthebuilder").json()
employee = Employee(
name=doc.get("name", "n/a")
department=doc.get("department", "n/a")
code=doc.get("code", "n/a")
)