私はPythonとFlaskを使って簡単なインタラクションWebアプリケーションを作成しています。 Chromeを使用してlocalhost:5000でテストする。Flaskの間に相対パスを使用してJavascriptファイルが見つかりませんでした。render_template
私は、1つのテンプレートと1つの関連付けられたJavaScriptファイルに配置されています: ./templates/main.html ./templates/main_scripts.js
main.htmlをテンプレートは、スクリプトは、このようなファイルが含まれます。
<script src="main_scripts.js"></script>
私はこのPythonコードを使用してテンプレートをレンダリング...
return render_template('main.html', session_id=session_id, title=sess.title)
main.htmlをページですレンダリングされたが、私はクロームコンソールでこのエラーを取得:
Failed to load resource: the server responded with a status of 404 (NOT FOUND)
unfound「main_scripts.js」エラーが発生した場合、ブラウザはそれからそれをロードしようとしていると考えるの場所を点検するためにクロームコンソールを使用します私の仮想環境内では、
./env/Scripts/main_scripts.js
...であり、テンプレートと同じディレクトリからではありません。
レンダリングされたテンプレートがスクリプトファイルの場所を理解できないようです。これまで私は "./main_scripts.js"や "/appdir/main_scripts.js"のようなsrcパスを全く同じ結果を試してきました。あなたがここに、テンプレートfloderとのjs subfloderと同じレベルで静的floderを作成する必要があり、そのfloderでJSを入れて、あなたのhtmlでこのようにそれを呼び出す
使用 '<スクリプトSRC =" {{なurl_for( '静的'、ファイル名=」 main_scripts.js ')}} ">'、あなたがサブルートにいるとき(すなわち: '/ user/info ')、相対パスは異なります。 – T4rk1n