54706


flask初心者です。練習として以下のようなプログラムを書きたいと思っています。

> はじめのページで"write me!"と、テキスト入力欄を表示する  
>  入力欄にテキストを入力すると、"you said {テキスト}" という文が表示される。

このために、以下のようなプログラムを書いてみました。

[code]

    from flask import *
    app = Flask(__name__)
    
    
    @app.route("/", methods=["GET","POST"])
    def hello():
        if request.method == "GET":
            return """
                write me!
                <form action="/" mathod="POST">
                <input name="text"></input>
                </form>"""
        else:
            try:
                return """
                    you said {}
                    <form action="/" method="POST">
                    <input name="text"></input>
                    </form>""".format(request.form["text"])
    
    
    if __name__ == "__main__":
        app.run()
    
[/code]

しかし、実際に動かしてみるとwrite me!とテキスト入力窓は表示されるのですが、そちらにテキストを入力しても、はじめのwrite
me!というページから移動しません...。

説明が上手くできず申し訳ありませんが、少しでもアドバイスをいただけましたら大変嬉しく思います。どうぞよろしくお願い申し上げます。


CC BY-SA 4.0
2019-05-04T05:12:47.887
54705
2019-05-04T05:35:36.363
2019-05-04T05:32:21.073
29826
27030
question
python html python3 flask
flaskで簡単なオウム返しプログラムを作りたい


typoです。

GET側のフォームにおいて、 `method` が `mathod` になっているため、常にGETで送信されています。修正したら正しく動きました。


CC BY-SA 4.0
2019-05-04T05:35:36.363
54706
2019-05-04T05:35:36.363
29826
54705
answer