[英]How to enter item into Google AppEngine Datastore?
我想檢查一下電子郵件是否在Appengine的數據庫中,如果沒有:然后將其輸入數據存儲區。
我是python的新手。 為什么這個簡單的代碼不起作用? (如果有更好的方式/更有效的方式來寫這個,請告訴我)
(我得到錯誤:BadArgumentError:未使用的位置參數[1])
class EmailAdd(webapp.RequestHandler):
def get(self):
query = db.GqlQuery("SELECT * FROM EmailDatabase WHERE emailaddress=':1'", self.request.get('emailaddress'))
result = query.get()
if result is None:
newemail = EmailDatabase()
newemail.emailaddress = self.request.get('emailaddress')
newemail.put()
作為參考,這是我的db類:
class EmailDatabase(db.Model):
emailaddress = db.StringProperty()
date = db.DateTimeProperty(auto_now_add=True)
將參數綁定到查詢時,不需要使用引號:
query = db.GqlQuery("SELECT * FROM EmailDatabase WHERE emailaddress = :1", self.request.get('emailaddress'))
否則它會將其作為字符串讀取,實際上只返回具有:1
作為其emailaddress值的對象。
此外,在將其插入查詢之前,請確保驗證用戶輸入( self.request.get('emailaddress')
)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.