2012-11-15 52 views
-1

我試圖做類似使用self.request.get查詢數據存儲

 try: 
     q = db.GqlQuery("SELECT * FROM people WHERE location = :loc", loc = location).fetch(1) 
     self.render('experimentform.html', q = q) 
    except: 
     render('experimentform.html') 
     location = self.request.get('location') 

,以允許用戶查詢使用下拉菜單中的數據存儲。

它的工作原理是渲染實驗表單,但提交位置後,我得到一個405錯誤,方法後不允許。

感謝您的任何幫助。

+0

您可以添加執行上述代碼段的處理程序的代碼嗎? –

+0

您爲什麼會認爲405錯誤與查詢數據存儲有關?很明顯,你甚至沒有那麼遠。 –

+0

即時通訊並不是說要查詢數據存儲。我說的是我提交了初始表格後,我得到了405錯誤。 – tanky

回答

2

你正在提交你的表單作爲POST,但你沒有(聽到它的聲音)有一個POST漢德配置。

所以,你必須

class MainPage(webapp2.RequestHandler): 
    def get(self): 
     do something with a get request 

你需要這個還有:

class MainPage(webapp2.RequestHandler): 
     def post(self): 
      *do something with a post request* 

或者你可以重新配置表單使用GET而不是POST,獨自離開你當前的代碼:

<form name="input" action="website_action" method="get"> 
+0

我知道我在做一些愚蠢的事,謝謝。其中一件不幸的事將來會記住。 – tanky