2016-10-22 77 views
0

我正在向现有数据存储模型添加新属性。我需要将具有数据的现有模式更新为新模式。我检查了updating schema的Google文档,并使用了ndb模型。Google App Engine在数据库模型中更新模式

我有一个DB模式是这样的:

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) 

你怎么办呢? (我想到的一件事是将新架构包含在不同的名称中,并手动将数据从旧架构填充到新架构并删除旧架构)

回答

2

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

+0

我只是添加一个新的属性到实体。添加此模型时,我的旧架构数据是否将使用默认值填充?或旧模式只存在没有此属性? – psun

相关问题