Google App Engine在数据库模型中更新架构

时间:2016-10-22 23:40:10

标签: python google-app-engine schema

我正在向现有数据存储模型添加新属性。我需要将包含数据的现有模式更新到新模式。我在updating schema上查看了Google的文档,它使用的是ndb模型。

我有这样的数据库模型:

class oldModel(db.Model):
     name = db.StringProperty(default = "")
     author = db.StringProperty(default = "")
     created = db.DateTimeProperty(auto_now_add = True)

我的新架构是:

class oldModel(db.Model):
     name = db.StringProperty(default = "")
     author = db.StringProperty(default = "")
     created = db.DateTimeProperty(auto_now_add = True)
     # new field
     category = db.IntegerProperty(default = 0)  

你是怎么做到的? (我想到的一件事是包含具有不同名称的新模式,并手动将数据从旧模式填充到新模式并删除旧模式)

1 个答案:

答案 0 :(得分:2)

添加属性非常简单。只需将其添加到您的模型中。对于之前存在的任何实体,它们将具有默认值。如果您之前存在的实体需要为新属性设置不同的值,则必须迭代它们并将新属性设置为所需的值。