2

私はDjangoサイトを開発していて、一連の編集の後、突然サーバーを実行しました-cssはありません!もちろん、サーバーは引き続きhtmlサイトを表示しますが、サイト全体のcssは404エラーをスローします。私の静的ファイル情報settings.pyはまったく編集されていません:

import os
# hack to accommodate Windows
CURRENT_PATH = os.path.abspath(os.path.dirname(__file__).decode('utf-8')).replace('\\', '/')

STATIC_URL = '/static/'

# Additional locations of static files
STATICFILES_DIRS = (
    os.path.join(CURRENT_PATH, 'static'),
)

私のベーステンプレートは、静的ファイルディレクトリに基づいてファイルを簡単に呼び出します。

<link rel="Stylesheet" type="text/css" href="{{ STATIC_URL }}css.css" />

そして最後に、もちろん、ここに私の関連するディレクトリ構造の簡単な内訳があります。エラーはある種のディレクトリの問題であると思われるからです。

-project-
     settings.py
     -static-
         css.css
     -templates-
         base.html
         index.html

index.htmlの場所のみを指定しましたが、もちろん、templatesフォルダーにはさまざまなテンプレート/ページのディレクトリがあります。

トラブルシューティング/回答の受信時に、この質問を最新の情報で更新します。

4

2 に答える 2

2

開発プラットフォームで静的URLを機能させるには、いくつかのことを行う必要があります。

このために、私はこのリンクを調べて読むことをお勧めします。https://docs.djangoproject.com/en/dev/howto/static-files/

これに加えて、ビューからリクエストコンテキストを返す必要もあります。

urls.pyファイル内に行を追加する必要があることに注意してください。

urlpatterns += staticfiles_urlpatterns()

この行により、開発サーバー内のURLのモジュールが静的ファイルを提供できるようになります。

os.path.joinまた、コード内に変数があることに気付きました。os.path.join基本的なdjangoセットアップを使用している場合は、すでに開発ディレクトリを指しています。

次を使用できるはずです。

# Additional locations of static files
STATICFILES_DIRS = (
    os.path.join('static'),
)

注:また、ビューがリクエストコンテキストを返していることを確認してください。これは、STATIC_URL変数に値を設定するために必要です。同様に、すべてがファイルにTEMPLATE_CONTEXT_PROCESSORS追加されていることを確認してくださいsettings.py

于 2013-03-26T16:05:14.827 に答える
0

解決策は次のとおりです。

{% load static from staticfiles %}
<link rel="Stylesheet" type="text/css" href="{% static "css.css" %}"/>

これは、Django1.7で静的ファイルを呼び出すための正しい方法です。

于 2015-01-31T01:44:27.363 に答える