大家好,couchdb 专业人士,
我有一个这样的映射设置:
class Product(BaseModel):
name= mapping.TextField()
returned = mapping.DictField(mapping.Mapping.build(
reason = mapping.TextField(),
put_back = mapping.BooleanField()
))
我有一个名为 getById 的函数,它接受一个 id 并通过以下方式返回一个产品:
return Product.load(db, id)
我有一个问题:当我加载特定产品并尝试设置返回的字典时:
product = Product.getById("123")
product.returned
>>> {}
product.returned['reason'] = "Test"
product.returned
>>> {}
注意: 我最近才修改模型以具有“返回”键。使用 getById 获得的旧产品对象中没有“返回”键。这会有所作为吗?它不应该是正确的,毕竟这是一个文档数据库,它应该是灵活的,对吧?
为什么设置“原因”属性后 product.returned 仍然返回一个空字典?
我做了一些调试并意识到产品变量的形式是:
<Product u'f90173026e859c65cfa08496115bf7bf'@u'11-3ea1135ceb6361631cbb08471d15df1e' {u'name': u'Printer', u'subProducts': [], u'company': {u'id': u'HP', u'name': u'Hewlett-Packard'}, u'productType':.......>
这是一个什么样的结果?它是视图结果还是文档?
非常感谢任何帮助,谢谢!
谢谢。