次のようなルートが必要な Flask サイトを作成しています。
@app.route('/')
@app.route('/<page_id>')
@app.route('/<page_id>/<subpage_id>')
def page(page_id=None, subpage_id=None):
...
これは理論的には機能するように見えますが、実際にはルートの static/ ディレクトリにある静的リソースが壊れているようです。この理由は、動的ルートが実際に「static/style.css」と一致し、静的ファイルの通常のハンドラーをオーバーライドするためだと思います。
これを回避する方法はありますか?page_id=='static' を検出した場合にリクエストを転送できる 'static' ハンドラはありますか?
編集:これは実用的なサンプルです
@app.route('/<page_id>/<subpage_id>/<subsubpage_id>')
def xxx(page_id=None, subpage_id=None, subsubpage_id=None):
return 'hello'
ここで開くhttp://127.0.0.1:5000/static/css/style.css
と、ファイルの代わりに「hello」が表示されるはずです。