Google App Engine - 向 db.model 的子类添加方法

Posted

技术标签:

【中文标题】Google App Engine - 向 db.model 的子类添加方法【英文标题】:Google App Engine - Adding Methods to subclasses of db.model 【发布时间】:2011-08-04 14:59:00 【问题描述】:

我想知道是否可以向 db.model 的子类添加方法。例如:

class Session(db.model):
    sessionId = db.StringProperty()
    # More Properties

    def refreshSession(self):
        #do some work
        self.put()

实施:

s = Session()
s.refreshSession()

这是推荐的吗?

【问题讨论】:

【参考方案1】:

这是向模型对象添加行为的典型方式。你为什么不这样做呢?

【讨论】:

这在我的脑海中也是有道理的,但 Google 文档都没有这样做 - 所以我很好奇。 在您的方法中调用 put 通常是一个糟糕的设计决策,因为它使调用者无法进行批处理操作。 我在定义类函数时遇到问题。你们有没有试过?

以上是关于Google App Engine - 向 db.model 的子类添加方法的主要内容,如果未能解决你的问题,请参考以下文章

Google App Engine 地理查询

使用搜索 API Python - Google App Engine 大表

在 Google App Engine 中上传文件

Google App Engine 模型的 JSON 序列化

从 Google App Engine 发送请求

使用 Google App Engine 发布订阅