我想創建一個BaseModel,它是一個EndpointsModel以包含所有模型(即created_at,modified_at)共有的屬性。然後我想創建一個擴展該BaseModel的用戶模型。當擴展EndpointsModel時,不會出現子類屬性
但是,我遇到了一個問題,當我在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)
下面是使用谷歌雲端點內置的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])
這似乎是一個錯誤?繼承應該「正常工作」。 – bossylobster
@bossylobster是的,我認爲是。 –
文件錯誤? https://github.com/GoogleCloudPlatform/endpoints-proto-datastore/issues/new – bossylobster