ディレクトリのみを処理し、ファイルを処理するすべてのルートをキャッチするにはどうすればよいですか?
以下は簡単な例です
from flask import Flask
app = Flask(__name__)
@app.route('/foo')
def foo_file():
return 'Queried: foo file'
@app.route('/foo/')
def foo_dir():
return 'Queried: foo dir'
@app.route('/<path:path>')
def file(path):
return 'Queried file: {0}'.format(path)
@app.route('/')
@app.route('/<path:path>/')
def folder(path):
return 'Queried folder: {0}'.format(path)
if __name__ == '__main__':
app.run()
アクセスするhttp:\\127.0.0.1:5000\foo
と It が呼び出さfoo_file()
れ、 for http:\\127.0.0.1:5000\foo\
it が呼び出されますfoo_dir()
。しかし、クエリhttp:\\127.0.0.1:5000\bar
とhttp:\\127.0.0.1:5000\bar\
両方の呼び出し
file()
. どうすればそれを変更できますか?
末尾のスラッシュを確認して手動で再ルーティングできることはわかっていますが、別の方法があるかどうか疑問に思っていました。