【问题标题】:Getting empty string with self.request.get()使用 self.request.get() 获取空字符串
【发布时间】:2014-06-04 21:04:03
【问题描述】:

我有这个简单的代码:

import jinja2
import webapp2


JINJA_ENVIRONMENT = jinja2.Environment(
    loader=jinja2.FileSystemLoader(os.path.dirname(__file__)),
    extensions=['jinja2.ext.autoescape'],
    autoescape=True)

class MainPage(webapp2.RequestHandler):
    def get(self):
        template_values = {}
        template = JINJA_ENVIRONMENT.get_template('index.html')
        self.response.out.write(template.render(template_values))

class PostHandler(webapp2.RequestHandler):
    def post(self):
        self.response.out.write("name = " + self.request.get('name'))       

application = webapp2.WSGIApplication([('/', MainPage),
                           ('/post', PostHandler)],
                            debug=True)

index.html 是:

<!DOCTYPE html>
{% autoescape true %}
<html>  
  <body>

    <form>Name:
        <input type="text" name="name">
    </form>
    <br>

    <form method = "post" action = "/post">    
        <input type="submit" value="Submit">
    </form>

  </body>
</html>
{% endautoescape %}

在 TextField 中输入一些文本:

我无法从 TextField 中获取文本:

有人知道我的问题是什么吗?

编辑:

Daniel Roseman 的答案解决了问题:

<form method = "post" action = "/post">   
    Name: <input type="text" name="name"> <br>
    <input type="submit" value="Submit">
</form>

【问题讨论】:

  • 如果对您有帮助,请不要忘记接受答案。
  • @DanielRoseman 你应该等几分钟才能接受答案。

标签: python html google-app-engine post jinja2


【解决方案1】:

由于某种原因,您有两个单独的 form 元素,一个带有输入字段,一个带有按钮。但它们必须采用相同的形式。

【讨论】:

    猜你喜欢
    • 2014-03-23
    • 2020-03-24
    • 1970-01-01
    • 2014-12-13
    • 2018-01-11
    • 1970-01-01
    • 2019-07-22
    • 1970-01-01
    • 2021-11-25
    相关资源
    最近更新 更多