我使用django-nonrel在Google应用引擎上部署了一个django项目。现在,我想通过添加名为“Pause”的整数字段来更新名为“Good”的模型的模式。
class Good(models.Model):
pause = models.PositiveIntegerField(default=0)
据我了解,这应该通过手动更新每个现有实例来完成。搜索完成后,我在下面编写了这段代码。
from goods.models import Good
from google.appengine.ext import db
def UpdateSchema():
query = list(Good.objects.all())
to_put = []
for p in query:
p.pause = 0
to_put.append(p)
if to_put:
db.put(to_put)
返回的错误是: “BadArgumentError:预期的一个(< class'google.appengine.ext.db.Model'>,);”
似乎db.put只接受google.appengine.ext.db.Model实例。如何将django模型实例更改为google.appengine.ext.db.Model实例?
答案 0 :(得分:0)
混合GAE SDK调用和django调用很痛苦。
我会做以下事情。
query = Good.objects.all()
for p in query:
p.pause = 0
p.save()