Doge log

Abby CTO 雑賀 力王のオフィシャルサイトです

構成および設定について

Djangoチュートリアルに出てきていたかどうか定かではないが自動でやってくれる設定がある。

  • templateの設定

基本はsetteings.pyに

TEMPLATE_DIRS='/home/template'

なんて記述するのですが

myproject/
        polls/ <====model
            models/
                __init__.py
                polls.py
            templates/    <==== template
                myproject/
                    index.html
            templatetags/    <==== tags
                __init__.py
                sample_tags.py 
            __init__.py
            views.py
    __init__.py
    manage.py
    settings.py
    urls.py

プロジェクトの構成を上記のようにし、インストールしておくと自動で読み込んでくれます。

  • templatetagsの設定

tagも同様です。
sample_tags

from django.core.template import Library
register = Library()
def dojo_javascript():
    from django.conf.settings import MEDIA_URL
    s = "<script type=\"text/javascript\" src=\"/"+MEDIA_URL+"/js/dojo.js\"></script>"
    print s
    return s
dojo_javascript = register.simple_tag(dojo_javascript)

と書いておきます
Template

{% load sample_tags&}
{% dojo_javascript( %}

と指定します。
そうすると実行時に

    <script type="text/javascript" src="/sample/js/dojo.js"></script>

と展開されます。
絶対パスで指定しなくても良いので便利です。
うくく。