静的ファイルに関連するドキュメントをいくつか読みましたが、うまくいきませんでした。テスト目的で、コンピューターで runserver を使用しています。私の html は次のディレクトリにあります: C:\mytemplates\polls\t3.html。t3.html は、my_static_files の下に置かれた js および css ファイルを使用します。では、Django の静的設定はどうあるべきで、my_static_files はどこに置くべきなのでしょうか?
質問する
73 次
1 に答える
1
正確に指定していないので、静的ファイルが C:\my_static_files\ であると仮定します
その場合、設定は次のようになります。
STATIC_URL = '/static/'
STATIC_ROOT = 'C:\my_static_files\'
テンプレートでは、{{STATIC_URL}} を使用して静的ファイルをロードできます。
<link rel="stylesheet" type="text/css" href="{{STATIC_URL}}css/your_style.css" />
<script type = "text/javascript" src = "{{STATIC_URL}}/js/your_script.js"></script>
サブフォルダー js と css に異なる名前を付けた場合は、それに応じてリンクを変更してください。それでもうまくいかない場合は、先頭と末尾のスラッシュを確認して再確認してください。
{{STATIC_URL}} を使用しても何も返されないとおっしゃったように、これを追加する必要があります: {{STATIC_URL}} を使用できるようにするには、RequestContext をテンプレートに渡す必要があります。ビューから Response を返すときに、次のように context_instance を渡すことでこれを行うことができます (つまり):
from django.template import RequestContext
from django.shortcuts import render_to_response
def some_view(request):
# your view code here
return render_to_response(template_name,
context,
context_instance=template.RequestContext(request) )
于 2012-04-22T09:44:53.600 に答える