2011-07-24 207 views
0

我正在使用Google App Engine Python。Python:在Google App Engine中存儲數字

我想在某處存儲一個簡單的可變數字,所以我可以添加,扣除和使用這個數字。

examplenum=5 
example+=1 

我用這個examplenum下一次,它西港島線成爲6

我知道我可以建立一個Model並添加IntegerProperty varible。但我想這太麻煩了,因爲我只需要一個簡單的號碼而不是一個模型。

我也讀過這個問題Simplest way to store a value in Google App Engine Python?,memcache解決方案對我不好。我希望這個號碼永遠不會停留在memcache

非常感謝。

回答

3

您鏈接的問題的所有答案都與您相關。如果你想堅持,你將不得不創建一個模型。查看使用get_or_insert來獲取/初始化一個實體併爲您的實體提供一個key_name,這樣您就可以在需要存儲值時隨時輕鬆獲取它。

class MyAppData(db.Model): 
    my_number = db.IntegerProperty() 

# fetch entity whenever you need to store your value 
data = MyAppData.get_or_insert(key_name='mydata', my_number=1) 

data.my_number += 1 
data.put() 

你的代碼看起來很像一個計數器,你可能想看看sharding countering文章,它的情況下,解決了他們培訓相關的問題。

+0

嗨克里斯,我想知道如何初始化您的模型?即'data = MyAppData.get_or_insert(key_name ='mydata',my_number = 1)'它只需要運行一次。我在考慮一個URL調用和一個函數,我手動訪問一次URL來調用函數。有沒有更簡單的方法?非常感謝! – DocWiki

+1

'get_or_insert'行可以被認爲是初始化。它將獲取實體的最新版本,或者基於其他參數創建一個。 –

相關問題