我有以下文件
{
"_id": "9036472948305957379",
"_rev":"162de87a696361533791aa7",
"firstname":"xyz",
"lastname": "abc"
}
现在我想将以上的dosument更新到以下
{
"_id": "9036472948305957379",
"_rev":"162de87a696361533791aa7",
"name":"xyz abc"
}
如果我做doc [' name'] =" xyz abc"它不会删除firstname和lastname属性。我该如何实现?
答案 0 :(得分:0)
在将文档保存回数据库之前,您需要从文档的本地副本中明确删除 firstname
和lastname
属性。
如果我正确理解您的问题,您当前正在发起更新操作时将以下文档正文(隐式或显式)发送到数据库:
{
"_id": "9036472948305957379",
"_rev":"162de87a696361533791aa7",
"firstname":"xyz",
"lastname": "abc",
"name":"xyz abc"
}
但是,您的有效负载需要如下所示:
{
"_id": "9036472948305957379",
"_rev":"162de87a696361533791aa7",
"name":"xyz abc"
}
如果您使用的是python-cloudant
库,请查看http://python-cloudant.readthedocs.io/en/latest/document.html处的field_set
方法:
static field_set(doc,field,value)
为本地缓存的Document对象中的字段设置或替换值。要删除该字段,请将值设置为“无”。