使用self.request.get查询数据存储区

时间:2012-11-15 13:21:12

标签: google-app-engine google-cloud-datastore

我正在尝试做类似

的事情
     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')

允许用户使用下拉菜单查询数据存储区。

它适用于渲染experimentform,但在提交位置后我得到405错误,不允许方法发布。

感谢您的帮助。

1 个答案:

答案 0 :(得分: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">