2012-10-06 52 views
0

我試圖使Django'靜態'標籤在所有模板中可用。我試過this suggestion使django靜態標籤全球可用

from django.template.loader import add_to_builtins 
add_to_builtins('django.contrib.staticfiles') # I've tried each of these 
add_to_builtins('django.contrib.staticfiles.templatetags') 
add_to_builtins('django.contrib.staticfiles.templatetags.staticfiles') 

但不斷收到以下錯誤消息:

django.template.base.InvalidTemplateLibrary: Template library django.contrib.staticfiles does not have a variable named 'register' 

我在做什麼錯?

感謝

+0

如果我理解的問題吧,我想我們都在問同樣的事情。在這裏回答:http://stackoverflow.com/questions/18709803/load-django-static-template-tag-library-globally-without-explicitly-loading-it – phazei

回答

0

您需要在您的settings.py添加'django.core.context_processors.static',這樣的:

TEMPLATE_CONTEXT_PROCESSORS = (
    'django.contrib.auth.context_processors.auth', 
    'django.core.context_processors.debug', 
    'django.core.context_processors.i18n', 
    'django.core.context_processors.media', 
    'django.core.context_processors.static', 
    'django.core.context_processors.request', 
    'django.contrib.messages.context_processors.messages', 
) 
+0

我只是試過,但我得到一個「無效塊標記:'static'「錯誤(在我的模板中刪除了顯式的'load static tags'調用之後) – Taras

+0

我理解它是正確的嗎?您想在模板中使用{{STATIC_URL}},並且只是將它與'static' ? – Thomas

+0

對不起,應該讓自己更清楚一點!我希望能夠使用'static'標籤(django 1.4中的新標籤),而不必在每個模板中加載「靜態」標籤庫。見https://docs.djangoproject.com/en/dev/ref/contrib/staticfiles/#static – Taras