我想创建一个用户定义的 MessageField,例如 DateTimeField。我创建了一个如下:
class ErrorMessage(Message):
code = StringField(1, required=True)
message = StringField(2, required=True)
reference = StringField(3, required=True)
class ErrorField(MessageField):
message_type = ErrorMessage
@util.positional(3)
def __init__(self, number, **kwargs):
super(ErrorField, self).__init__(self.message_type, number, **kwargs)
听起来对吗?我已将此 ErrorField 用作 Google 云端点响应类中的字段之一。它适用于 JS 客户端,但与 android 一起使用时,错误对象的格式为 error=""。
return MyResponse(
isSaved=False,
error=ErrorMessage(code="200", message=simplejson.dumps(form.errors), reference="form validation error")
)
from protorpc.messages import Message, StringField, MessageField
class MyResponse(Message):
isSaved = StringField(1, required=True)
error = ErrorField(2, required = False)
我的端点需要通用的错误类,为此我需要一个自定义的 ErrorField。提前致谢。