1

Google App Engine の使用時にフォーム データを URL にエンコードするにはどうすればよいですか?

以下のコードは、テキストを入力するフォームを生成します。テキストは別のページに表示されます"/sign"

に向ける代わりに、/sign私はに向けたい/sign?message="hello"

ここからの私のコードは次のとおりです: https://developers.google.com/appengine/docs/python/gettingstartedpython27/handlingforms )

import cgi
import webapp2

from google.appengine.api import users

class MainPage(webapp2.RequestHandler):
    def get(self):
        self.response.out.write("""
          <html>
            <body>
              <form action="/sign" method="post">
                <div><textarea name="content" rows="3" cols="60"></textarea></div>
                <div><input type="submit" value="Sign Guestbook"></div>
              </form>
            </body>
          </html>""")


class Guestbook(webapp2.RequestHandler):
    def post(self):
        self.response.out.write('<html><body>You wrote:<pre>')
        self.response.out.write(cgi.escape(self.request.get('content')))
        self.response.out.write('</pre></body></html>')

app = webapp2.WSGIApplication([('/', MainPage),
                              ('/sign', Guestbook)],
                              debug=True)
4

1 に答える 1

1

あなたが何を達成しようとしているのか、私にはよくわかりません。自分の意思を書いていただければ、より的確なアドバイスがもらえるかもしれません。

結果を得るには、post の代わりに get を使用する必要があると思います。Get は URL を変更します。変更されたコードは次のとおりです。

import cgi
import webapp2

from google.appengine.api import users

class MainPage(webapp2.RequestHandler):
    def get(self):
        self.response.out.write("""
          <html>
            <body>
              <form action="/sign">
                <div><textarea name="content" rows="3" cols="60"></textarea></div>
                <div><input type="submit" value="Sign Guestbook"></div>
              </form>
            </body>
          </html>""")


class Guestbook(webapp2.RequestHandler):
    def get(self):
        self.response.out.write('<html><body>You wrote:<pre>')
        self.response.out.write(cgi.escape(self.request.get('content')))
        self.response.out.write('</pre></body></html>')


app = webapp2.WSGIApplication([('/', MainPage),
                              ('/sign', Guestbook)],
                              debug=True)

webapp2 と get メソッドと post メソッドについて詳しく知りたい場合は、udacity CS253を参照してください。

于 2012-12-16T05:51:48.097 に答える