使用endpoints-proto-datastore更新Endpoints类的内容

时间:2014-09-14 11:58:09

标签: google-app-engine google-cloud-datastore app-engine-ndb endpoints-proto-datastore

我有一个继承自EndpointsModel

的类
class User( EndpointsModel ):
  name = ndb.StructuredProperty( Name, required=True )
  dateOfBirth = ndb.DateProperty(required=True)
  userName = ndb.StringProperty( required=True )
  emailId = ndb.StringProperty( required=True )

现在,假设我想用某个用户名更新某些用户的名称。因为,User的方法需要一个User对象作为输入和输出,我是否必须为name创建一个单独的消息类,然后使用它来更新名称,就像我没有使用endpoints-proto-datastore一样?

1 个答案:

答案 0 :(得分:1)

您可以在API方法中定义request_fields,将“请求消息”限制为User

中字段的子集
@User.method(path='/user/{id}',
             http_method='PUT',
             name='update',
             request_fields=('id', 'name'))
def update_user(self, user):
    ...