URLパターンが原因でDjangoテンプレートがJavaScriptとCSSを適切にロードしない

StackOverflow https://stackoverflow.com/questions/2572984

  •  24-09-2019
  •  | 
  •  

質問

これを実行すると、すべてがうまくいきます。

(r"^newobject$", "views.myobjects.newobject"),

すべての CSS + JS ファイルは以下から適切に取得されます。

static/css/...
static/js/...

これを実行すると:

(r"^mybjects/(([a-z]|[A-Z]|[0-9])+)$","views.myobjects.loadobject"),

フェッチされているすべての CSS ファイルと JS ファイルは URL パターンを通じて実行され、デフォルトのページが返されます。

(r"", 'views.main.index'),

これにより、すべての CSS コードと JS コードが実際には HTML になります。私の推測では、私は初心者の間違いを犯していると思います。これが起こる共通の理由はありますか?そしてそれを修正するにはどうすればよいでしょうか?

編集:

CSS の例:

<link href="static/css/style.css" type="text/css" rel="stylesheet">

JS の例:

<script src="static/js/libs/date.js" type="text/javascript"></script>
役に立ちましたか?

解決

違いを見ます:

  • アクセスすると *some url*/newobjectstatic/css/style.css 参照します *some url*/static/css/style.css*
  • アクセスすると *some url*/newobject/whateverstatic/css/style.css 参照します *some url*/newobject/static/css/style.css*

URL が常に深く浮遊する場合は、サーバー ルートに相対的な URL を使用して JavaScript と CSS を含めます (次のようにして開始します)。 /) 現在のディレクトリを基準とする代わりに。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top