質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Flask

FlaskはPython用のマイクロフレームワークであり、Werkzeug・Jinja 2・good intentionsをベースにしています。

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Q&A

2回答

2370閲覧

Paiza lesson'FLASKで一行掲示板を作ろう'を写経してもエラーが出る

Lavieestbelle

総合スコア10

Flask

FlaskはPython用のマイクロフレームワークであり、Werkzeug・Jinja 2・good intentionsをベースにしています。

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

0グッド

0クリップ

投稿2019/04/10 13:34

編集2019/04/10 13:48
コード PaizaのFlaskのレッスンで、一行掲示板をつくろうというものがあります。 写経をしたんですが、エラーが出てしまいます。 ```■**bbs.py**■ from flask import Flask, request, render_template import codecs app=Flask(______name__) @app.route("/") def bbs(): message = "Hello World" file = codecs.open("articles.txt", "r", "utf-8") lines= file.readlines() file.close() return render_template("bbs.html", message= message, lines= lines) @app.route("/result", method=["POST"]) def result(): message= "This is paiza" article= request.form["article"] name= request.form["name"] return render_template("bbs.html", message =message , article=article,name=name) ■**bbs.html**■ {% extends "layout.html" %} {% block content %} <h1>1行掲示板</h1> <p>{{ message }}</p> <form action="/result" method="post"> <label for="article">投稿</label> <input type="text" name="article"> <p></p> <label for="name">名前</label> <input type="text" name="name"> <button type="submit">送信する</button> </form> <h2>投稿一覧</h2> <table> <tr><th>投稿</th><th>名前</th></tr> {% for line in lines: %} {% set column =line.rstrip().split(",") %} <tr> {% for item in column: %} <td>{{ item }}</td> {% endfor %} </tr> {% endfor %} </table> {% endblock %} ■**articles.txt**■ HEllo World, paiza Hellopython , paiza Hello Flask, paiza 世界の皆さんこんにちは, kirisima にゃー、猫 **エラー** PS C:\Users\kayoc\Documents\myapp> $env:FLASK_APP="bbs.py" PS C:\Users\kayoc\Documents\myapp> flask run * Serving Flask app "bbs.py" * Environment: production WARNING: Do not use the development server in a production environment. Use a production WSGI server instead. * Debug mode: off Traceback (most recent call last): File "c:\users\kayoc\appdata\local\programs\python\python37\lib\runpy.py", line 193, in _run_module_as_main "__main__", mod_spec) File "c:\users\kayoc\appdata\local\programs\python\python37\lib\runpy.py", line 85, in _run_code exec(code, run_globals) File "C:\Users\kayoc\AppData\Local\Programs\Python\Python37\Scripts\flask.exe\__main__.py", line 9, in <module> File "c:\users\kayoc\appdata\local\programs\python\python37\lib\site-packages\flask\cli.py", line 894, in main cli.main(args=args, prog_name=name) File "c:\users\kayoc\appdata\local\programs\python\python37\lib\site-packages\flask\cli.py", line 557, in main return super(FlaskGroup, self).main(*args, **kwargs) File "c:\users\kayoc\appdata\local\programs\python\python37\lib\site-packages\click\core.py", line 717, in main rv = self.invoke(ctx) File "c:\users\kayoc\appdata\local\programs\python\python37\lib\site-packages\click\core.py", line 1137, in invoke return _process_result(sub_ctx.command.invoke(sub_ctx)) File "c:\users\kayoc\appdata\local\programs\python\python37\lib\site-packages\click\core.py", line 956, in invoke return ctx.invoke(self.callback, **ctx.params) File "c:\users\kayoc\appdata\local\programs\python\python37\lib\site-packages\click\core.py", line 555, in invoke return callback(*args, **kwargs) File "c:\users\kayoc\appdata\local\programs\python\python37\lib\site-packages\click\decorators.py", line 64, in new_func return ctx.invoke(f, obj, *args, **kwargs) File "c:\users\kayoc\appdata\local\programs\python\python37\lib\site-packages\click\core.py", line 555, in invoke return callback(*args, **kwargs) File "c:\users\kayoc\appdata\local\programs\python\python37\lib\site-packages\flask\cli.py", line 767, in run_command app = DispatchingApp(info.load_app, use_eager_loading=eager_loading) File "c:\users\kayoc\appdata\local\programs\python\python37\lib\site-packages\flask\cli.py", line 293, in __init__ self._load_unlocked() File "c:\users\kayoc\appdata\local\programs\python\python37\lib\site-packages\flask\cli.py", line 317, in _load_unlocked self._app = rv = self.loader() File "c:\users\kayoc\appdata\local\programs\python\python37\lib\site-packages\flask\cli.py", line 372, in load_app app = locate_app(self, import_name, name) File "c:\users\kayoc\appdata\local\programs\python\python37\lib\site-packages\flask\cli.py", line 235, in locate_app __import__(module_name) File "C:\Users\kayoc\Documents\myapp\bbs.py", line 13, in <module> @app.route("/result", method=["POST"]) File "c:\users\kayoc\appdata\local\programs\python\python37\lib\site-packages\flask\app.py", line 1250, in decorator self.add_url_rule(rule, endpoint, f, **options) File "c:\users\kayoc\appdata\local\programs\python\python37\lib\site-packages\flask\app.py", line 66, in wrapper_func return f(self, *args, **kwargs) File "c:\users\kayoc\appdata\local\programs\python\python37\lib\site-packages\flask\app.py", line 1213, in add_url_rule rule = self.url_rule_class(rule, methods=methods, **options) TypeError: __init__() got an unexpected keyword argument 'method'

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

y_waiwai

2019/04/10 13:40

このままではコードが見れないので、質門を編集し、<code>ボタンで、出てくる’’’の枠の中にコードを貼り付けてください エラーメッセージも一緒に貼り付けていただければよろしいかと
guest

回答2

0

以下のようにコードを変えてみてはいかがでしょう。

#改善前 @app.route("/result", method=["POST"]) #改善後 @app.route("/result", methods=["GET","POST"])

参考記事:TypeError: init() got an unexpected keyword argument 'method'

投稿2019/04/10 13:58

amahara_waya

総合スコア1029

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

mkgrei

2019/04/10 14:02 編集

現状ですと、GETを入れると処理によってはサーバ側でエラーになるのはまた別のお話。
Lavieestbelle

2019/04/11 10:45

ご回答いただきありがとうございます。 返信が遅くなり申し訳ございません。 GETをいれてみましたがエラーになってしまいました。
guest

0

投稿2019/04/10 13:54

mkgrei

総合スコア8560

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

mkgrei

2019/04/10 13:55

@app.route("/result", method=["POST"]) ↑のお話
Lavieestbelle

2019/04/11 10:44

ごかいとういただきありがとうございます。また、返信が遅くなり申し訳ございません。 ブラウザで試すとエラーが出ます。。 PS C:\Users\kayoc\Documents\myapp> $env:FLASK_APP="bbs.py" PS C:\Users\kayoc\Documents\myapp> flask run * Serving Flask app "bbs.py" * Environment: production WARNING: Do not use the development server in a production environment. Use a production WSGI server instead. * Debug mode: off Traceback (most recent call last): File "c:\users\kayoc\appdata\local\programs\python\python37\lib\runpy.py", line 193, in _run_module_as_main "__main__", mod_spec) File "c:\users\kayoc\appdata\local\programs\python\python37\lib\runpy.py", line 85, in _run_code exec(code, run_globals) File "C:\Users\kayoc\AppData\Local\Programs\Python\Python37\Scripts\flask.exe\__main__.py", line 9, in <module> File "c:\users\kayoc\appdata\local\programs\python\python37\lib\site-packages\flask\cli.py", line 894, in main cli.main(args=args, prog_name=name) File "c:\users\kayoc\appdata\local\programs\python\python37\lib\site-packages\flask\cli.py", line 557, in main return super(FlaskGroup, self).main(*args, **kwargs) File "c:\users\kayoc\appdata\local\programs\python\python37\lib\site-packages\click\core.py", line 717, in main rv = self.invoke(ctx) File "c:\users\kayoc\appdata\local\programs\python\python37\lib\site-packages\click\core.py", line 1137, in invoke return _process_result(sub_ctx.command.invoke(sub_ctx)) File "c:\users\kayoc\appdata\local\programs\python\python37\lib\site-packages\click\core.py", line 956, in invoke return ctx.invoke(self.callback, **ctx.params) File "c:\users\kayoc\appdata\local\programs\python\python37\lib\site-packages\click\core.py", line 555, in invoke return callback(*args, **kwargs) File "c:\users\kayoc\appdata\local\programs\python\python37\lib\site-packages\click\decorators.py", line 64, in new_func return ctx.invoke(f, obj, *args, **kwargs) File "c:\users\kayoc\appdata\local\programs\python\python37\lib\site-packages\click\core.py", line 555, in invoke return callback(*args, **kwargs) File "c:\users\kayoc\appdata\local\programs\python\python37\lib\site-packages\flask\cli.py", line 767, in run_command app = DispatchingApp(info.load_app, use_eager_loading=eager_loading) File "c:\users\kayoc\appdata\local\programs\python\python37\lib\site-packages\flask\cli.py", line 293, in __init__ self._load_unlocked() File "c:\users\kayoc\appdata\local\programs\python\python37\lib\site-packages\flask\cli.py", line 317, in _load_unlocked self._app = rv = self.loader() File "c:\users\kayoc\appdata\local\programs\python\python37\lib\site-packages\flask\cli.py", line 372, in load_app app = locate_app(self, import_name, name) File "c:\users\kayoc\appdata\local\programs\python\python37\lib\site-packages\flask\cli.py", line 235, in locate_app __import__(module_name) File "C:\Users\kayoc\Documents\myapp\bbs.py", line 13, in <module> @app.route("/result", method=["POST"]) File "c:\users\kayoc\appdata\local\programs\python\python37\lib\site-packages\flask\app.py", line 1250, in decorator self.add_url_rule(rule, endpoint, f, **options) File "c:\users\kayoc\appdata\local\programs\python\python37\lib\site-packages\flask\app.py", line 66, in wrapper_func return f(self, *args, **kwargs) File "c:\users\kayoc\appdata\local\programs\python\python37\lib\site-packages\flask\app.py", line 1213, in add_url_rule rule = self.url_rule_class(rule, methods=methods, **options) TypeError: __init__() got an unexpected keyword argument 'method' PS C:\Users\kayoc\Documents\myapp> $env:FLASK_APP="bbs.py" PS C:\Users\kayoc\Documents\myapp> flask run * Serving Flask app "bbs.py" * Environment: production WARNING: Do not use the development server in a production environment. Use a production WSGI server instead. * Debug mode: off * Running on http://127.0.0.1:5000/ (Press CTRL+C to quit) [2019-04-11 19:39:22,760] ERROR in app: Exception on / [GET] Traceback (most recent call last): File "c:\users\kayoc\appdata\local\programs\python\python37\lib\site-packages\flask\app.py", line 2292, in wsgi_app response = self.full_dispatch_request() File "c:\users\kayoc\appdata\local\programs\python\python37\lib\site-packages\flask\app.py", line 1815, in full_dispatch_request rv = self.handle_user_exception(e) File "c:\users\kayoc\appdata\local\programs\python\python37\lib\site-packages\flask\app.py", line 1718, in handle_user_exception reraise(exc_type, exc_value, tb) File "c:\users\kayoc\appdata\local\programs\python\python37\lib\site-packages\flask\_compat.py", line 35, in reraise raise value File "c:\users\kayoc\appdata\local\programs\python\python37\lib\site-packages\flask\app.py", line 1813, in full_dispatch_request rv = self.dispatch_request() File "c:\users\kayoc\appdata\local\programs\python\python37\lib\site-packages\flask\app.py", line 1799, in dispatch_request return self.view_functions[rule.endpoint](**req.view_args) File "C:\Users\kayoc\Documents\myapp\bbs.py", line 11, in bbs return render_template("bbs.html", message= message, lines= lines) File "c:\users\kayoc\appdata\local\programs\python\python37\lib\site-packages\flask\templating.py", line 134, in render_template return _render(ctx.app.jinja_env.get_or_select_template(template_name_or_list), File "c:\users\kayoc\appdata\local\programs\python\python37\lib\site-packages\jinja2\environment.py", line 869, in get_or_select_template return self.get_template(template_name_or_list, parent, globals) File "c:\users\kayoc\appdata\local\programs\python\python37\lib\site-packages\jinja2\environment.py", line 830, in get_template return self._load_template(name, self.make_globals(globals)) File "c:\users\kayoc\appdata\local\programs\python\python37\lib\site-packages\jinja2\environment.py", line 804, in _load_template template = self.loader.load(self, name, globals) File "c:\users\kayoc\appdata\local\programs\python\python37\lib\site-packages\jinja2\loaders.py", line 113, in load source, filename, uptodate = self.get_source(environment, name) File "c:\users\kayoc\appdata\local\programs\python\python37\lib\site-packages\flask\templating.py", line 58, in get_source return self._get_source_fast(environment, template) File "c:\users\kayoc\appdata\local\programs\python\python37\lib\site-packages\flask\templating.py", line 86, in _get_source_fast raise TemplateNotFound(template) jinja2.exceptions.TemplateNotFound: bbs.html 127.0.0.1 - - [11/Apr/2019 19:39:22] "?[1m?[35mGET / HTTP/1.1?[0m" 500 - PS C:\Users\kayoc\Documents\myapp> $env:FALSK_APP="bbs.py" PS C:\Users\kayoc\Documents\myapp> flask run * Serving Flask app "bbs.py" * Environment: production WARNING: Do not use the development server in a production environment. Use a production WSGI server instead. * Debug mode: off * Running on http://127.0.0.1:5000/ (Press CTRL+C to quit) [2019-04-11 19:41:06,544] ERROR in app: Exception on / [GET] Traceback (most recent call last): File "c:\users\kayoc\appdata\local\programs\python\python37\lib\site-packages\flask\app.py", line 2292, in wsgi_app response = self.full_dispatch_request() File "c:\users\kayoc\appdata\local\programs\python\python37\lib\site-packages\flask\app.py", line 1815, in full_dispatch_request rv = self.handle_user_exception(e) File "c:\users\kayoc\appdata\local\programs\python\python37\lib\site-packages\flask\app.py", line 1718, in handle_user_exception reraise(exc_type, exc_value, tb) File "c:\users\kayoc\appdata\local\programs\python\python37\lib\site-packages\flask\_compat.py", line 35, in reraise raise value File "c:\users\kayoc\appdata\local\programs\python\python37\lib\site-packages\flask\app.py", line 1813, in full_dispatch_request rv = self.dispatch_request() File "c:\users\kayoc\appdata\local\programs\python\python37\lib\site-packages\flask\app.py", line 1799, in dispatch_request return self.view_functions[rule.endpoint](**req.view_args) File "C:\Users\kayoc\Documents\myapp\bbs.py", line 11, in bbs return render_template("bbs.html", message= message, lines= lines) File "c:\users\kayoc\appdata\local\programs\python\python37\lib\site-packages\flask\templating.py", line 134, in render_template return _render(ctx.app.jinja_env.get_or_select_template(template_name_or_list), File "c:\users\kayoc\appdata\local\programs\python\python37\lib\site-packages\jinja2\environment.py", line 869, in get_or_select_template return self.get_template(template_name_or_list, parent, globals) File "c:\users\kayoc\appdata\local\programs\python\python37\lib\site-packages\jinja2\environment.py", line 830, in get_template return self._load_template(name, self.make_globals(globals)) File "c:\users\kayoc\appdata\local\programs\python\python37\lib\site-packages\jinja2\environment.py", line 804, in _load_template template = self.loader.load(self, name, globals) File "c:\users\kayoc\appdata\local\programs\python\python37\lib\site-packages\jinja2\loaders.py", line 113, in load source, filename, uptodate = self.get_source(environment, name) File "c:\users\kayoc\appdata\local\programs\python\python37\lib\site-packages\flask\templating.py", line 58, in get_source return self._get_source_fast(environment, template) File "c:\users\kayoc\appdata\local\programs\python\python37\lib\site-packages\flask\templating.py", line 86, in _get_source_fast raise TemplateNotFound(template) jinja2.exceptions.TemplateNotFound: bbs.html 127.0.0.1 - - [11/Apr/2019 19:41:06] "?[1m?[35mGET / HTTP/1.1?[0m" 500 -
Lavieestbelle

2019/04/11 10:46

このエラーはどのように解釈をすればよろしいのでしょうか。
mkgrei

2019/04/11 14:02

./templates/bbs.html が見つからなかったようです。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問