我正在使用' endpoints-proto-datastore'库和在如何为我的请求添加额外参数方面有点迷失。
基本上我想添加这些字段[ID,token],ID是必需的。 Blossom.io正在做类似的事情,Blossom.io Api
这是我的Post方法
@Doctor.method(path='doctor', http_method='POST', name='doctor.insert')
def DoctorInsert(self, doctor):
@Edit
没有Proto-Datastore库:
request = endpoints.ResourceContainer(
message_types.VoidMessage,
id=messages.IntegerField(1,variant=messages.Variant.INT32),
token=messages.IntegerField(2, variant=messages.Variant.INT32)
)
@endpoints.method(request, response,
path='doctor/{id}', http_method='POST',
name='doctor.insert')
如何使用proto-datastore库进行相同的操作?
答案 0 :(得分:1)
我这样做的方法是将另一个属性添加到用@EndpointsAliasProperty和setter装饰的模型中。我不会将其称为ID,因为它可能会与App Engine内置ID混淆。
class Doctor(EndpointsModel):
...
@EndpointsAliasProperty(
setter=set_doctorid, property_type=messages.StringField
)
def doctorid(self):
#Logic to retrieve the ID
return doctorid
def set_doctorid(self, value):
#The ID will be in the value, assign and store it in your model