2016-10-19 21 views
0

比方说,我有两个必填字段模型:端点,原数据存储 - 场应该被要求在后,但没有得到

class ExampleModel(EndpointsModel): 
    attr1 = ndb.StringProperty(required=True) 
    attr2 = ndb.StringProperty(required=True) 

然后我想使用的端点,原数据存储到查询无论是 attR1位或attR2位:

@ExampleModel.query_method(query_fields=('attr1', 'attr2'), 
          path='example', name='list') 
    def example_list(self, query): 
     return query 

这将失败,如果我只提供其中的一个字段 - 从API浏览器这是一个必填字段,但API本身返回:

{ 
"error": { 
    "code": 400, 
    "errors": [ 
    { 
    "domain": "global", 
    "message": "Error parsing ProtoRPC request (Unable to parse request content: Message CombinedContainer is missing required field attr2)", 
    "reason": "badRequest" 
    } 
    ], 
    "message": "Error parsing ProtoRPC request (Unable to parse request content: Message CombinedContainer is missing required field attr2)" 
} 
} 

很明显,我可以将它们标记为不需要,然后在应用程序代码中处理检查 - 但我想知道是否有其他人提出了更好的解决方案。

非常感谢

回答

0

这是一个老问题,但我遇到了同样的困惑。 This是我找到的答案。基本上,如果你想在Post上制定一些规定,但不能让你需要制定一个自定义的proto类。哪些只能用于method而不是query_method。

+0

感谢您花时间在此处张贴。 –

+0

没有问题,你最终继续使用它吗? – turtle

+0

我没有......我只是不断发现这样的东西太多,这可能有答案,但并不明显,并最终切换技术。 –

相关问题