k2mtr
@k2mtr (ryo)

Are you sure you want to delete the question?

Leaving a resolved question undeleted may help others!

flask routes でルーティング情報にも存在するのにブラウザでアクセスできない

Q&A

Closed

解決したいこと

「Python Flaskによるwebアプリ開発入門」という書籍を勉強しています。
flask routesを使ってルーティング情報を確認して、エンドポイントの追加はされているのですが、
ブラウザにアクセスできません。

Qiitaに初めて投稿するので情報不足であったり不明確な部分があったら申し訳ないです。
その際はご教示していただけると幸いです。

発生している問題・エラー

2022-04-29.png

該当するソースコード

from flask import Flask, redirect, render_template, request, url_for

app = Flask(__name__)


@app.route("/contact")
def contact():
    return render_template("contact.html")


@app.route("/contact/complete", methods=["GET", "POST"])
def contact_complete():
    if request.method == "POST":
        # メールを送る

        # contactエンドポイントへリダイレクトする
        return redirect(url_for("contact_complete"))

    return render_template("contact_complete.html")

ターミナルでの状況

>flask routes
/
/hello/world
/name/ichiro?page=1
true
Endpoint          Methods    Rule
----------------  ---------  -----------------------
contact           GET        /contact
contact_complete  GET, POST  /contact/complete
static            GET        /static/<path:filename>

自分で試したこと

・コードの確認
・ネットで検索

0

1Answer

テンプレートファイルが存在しないというエラーのようです。 templates/contact.html は存在していますか?置く場所やファイル名を間違えていませんか?

1Like

Comments

  1. @k2mtr

    Questioner

    templatesがtamplatesになってました。。。
    ありがとうございます

Your answer might help someone💌