Refactoring My Intelligence

技術的/非技術的な雑記,備忘録等々

Django1.5 tutorial Part6 個人的メモ

このパートではスタイルシートと画像の追加方法について解説している.

DjangoではJavaScriptCSS等は"static files"と呼ぶことにしているらしい.

自分のアプリのルック&フィールをカスタマイズする

最初にstaticという名前のディレクトリをpollsディレクトリの下に作成する.Djangoはテンプレートファイルを探すのと同じような仕組みでstaticファイルを探す.次にpollsという名前のディレクトリをその下に作成し,そのディレクトリの中でstyle.cssファイルを作成する.つまり,

polls/static/polls/style.css

というパスになっているはず.

これはDjangoのデフォルトのstaticファイルを探すモジュール(AppDirectoriesFinder)が<app name>/static/配下にあるstyle.cssを探すため.staticディレクトリの下にもう一度<app name>ディレクトリを挟んでいるのはstaticファイルにも名前空間を持たせるためのようである.

ちなみにこの動作を変更したい場合はsettings.pyのSTATICFILE_FINDERSの値を変更すればよいらしい.

以下のコードをpolls/static/polls/style.cssに記述する.

li a {
    color: green;
}

次にpollsのindex.htmlの先頭に以下を追記する.

{% load staticfiles %}

<link rel="stylesheet" type="text/css" href="{% static 'polls/style.css' %}" />

背景画像の追加

次に画像用のサブディレクトリを作成する.作成場所は

polls/static/polls/images

で,その下に例えばbackground.gifなどの背景画像データを格納する.パスで表すと以下.

polls/static/polls/images/background.gif

そしてさっきのスタイルシートファイルに以下を追記すれば背景画像が取り込まれる.

body {
    background: white url("images/background.gif") no-repeat right bottom;
}

以上.より詳しいことは,

などを参考にするとよいらしい.これらは気が向いたらそのうち翻訳するかもしれない.