Eve - 是否可以从文档中取消设置密钥?
问题描述:
与可选的值,如在本例中code
架构:Eve - 是否可以从文档中取消设置密钥?
'code': {
'type': 'string',
},
'name': {
'type': 'string',
'required': True,
},
'email': {
'type': 'string',
'required': True
}
比方说,有与code
值插入文档。我可以使用夏娃以某种方式取消这样的code
键吗?
答
达到此目的的一种方法是为端点设置一个default projection。
限制由API端点 默认情况下,API响应暴露的字段集,GET请求将包括由相应的资源架构中定义的所有字段。数据源资源关键字的投影设置允许您重新定义字段。
people = {
'datasource': {
'projection': {'username': 1}
}
}
以上设置将仅暴露用户名字段GET请求,无论该资源的架构中定义。
另一种选择是利用MongoDB Aggregation Framework本身。只需设置端点,以便在将数据返回给客户端之前执行聚合。以下应工作(见docs了解详细信息):
posts = {
'datasource': {
'aggregation': {
'pipeline': [{"$unset": "code"}]
}
}
}
你需要前夕V0.7为聚合支持。
该片段是cerberus模式,用于在验证API文档的前夕。我想要的是通过API调用删除密钥。 – gcw