勇気ある加藤の猛り

元気はないけど、勇気があります

Bottle.pyでTemplate 'index.html' not found.になった時の対処法

f:id:katoh4u:20180330103921j:plain


こんにちは勇気ある加藤です。

Bottle.pyでテンプレートを使う際にエラーでハマったのでメモです。
ディレクトリの構成はこんな感じです

/
├── views/
│   ├── index.html
└── index.py


そして、以下のコードを実行したところTemplate 'index.html' not found.というエラーが出ました。

#!/usr/local/bin/python3

from bottle import *
TEMPLATE_PATH.append('/views')

@route('/')
def index():
    return template("index.html")

if __name__=='__main__':
    run(host='localhost', port=8080, debug=True)



実行ディレクトリがルートではなかったことが原因のようです

このコードはVSCodeの内蔵ターミナルで実行していたのですがVSCodeのデフォルトの設定では、実行ディレクトリがC:\Users\hogeになるため、パスの指定がうまくいかなかったようです。別途ターミナルを立ち上げてルートまで移動し、index.pyを実行することで解決しました。単純なミスですがハマってしまったので反省です。さよなら