【发布时间】:2014-01-28 19:26:05
【问题描述】:
我想创建一个作为 EndpointsModel 的 BaseModel,以包含我的所有模型共有的属性(即 created_at、modified_at)。然后我想创建一个扩展该 BaseModel 的用户模型。
但是,我遇到了一个问题,当我在 API Explorer 中查看我的“user.create”方法时,请求正文仅显示 created_at 和 modified_at 的 BaseModel 属性,但不显示用户名属性。
这是我所拥有的:
from endpoints_proto_datastore.ndb import EndpointsModel
from google.appengine.ext import ndb
class BaseModel(EndpointsModel):
created_at = ndb.DateTimeProperty(auto_now_add=True)
modified_at = ndb.DateTimeProperty(auto_now=True)
class User(BaseModel):
username = ndb.StringProperty(required=True)
这是使用 Google Cloud Endpoints 构建的 API:
import endpoints
from google.appengine.ext import ndb
from models import User
from protorpc import remote
@endpoints.api(name='user', version='v1',
description='API for User Management')
class UserApi(remote.Service):
@User.method(name='user.create', path='user'):
def create_user(self, user):
user.put()
return user
application = endpoints.api_server([UserApi])
【问题讨论】:
标签: python google-app-engine google-cloud-endpoints endpoints-proto-datastore