2013-07-08 21 views
1

我使用django-nonrel在Google應用引擎上部署了一個django項目。現在我想通過添加一個名爲「Pause」的整數字段來更新名爲「Good」的模型的模式。如何使用django-nonrel將字段添加到Google應用引擎上的django模型?

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:預期(<類 'google.appengine.ext.db.Model' >,)中的一個; "

看來,db.put只接受google.appengine.ext.db.Model實例。我如何將django模型實例更改爲google.appengine.ext.db.Model實例?

回答

0

混合GAE SDK調用和django調用是痛苦的。

我會做以下事情。

query = Good.objects.all() 

for p in query: 
    p.pause = 0 
    p.save() 
+0

它的工作原理。非常感謝。我以爲我不得不直接操縱GAE數據存儲。 – river6

相關問題