我有一个非常奇怪的问题,试图让staticfiles
taglib在我的应用程序中运行。我基本上得到以下错误:
'staticfiles' is not a valid tag library: Template library staticfiles not found, tried django.templatetags.staticfiles,django.contrib.admin.templatetags.staticfiles
这是我的模板,它抛出了这个错误:
{% load staticfiles %}
<html>
<head>
{% block stylesheets %}
<link rel="stylesheet" href="{% static "styles/bootstrap-1.2.0.min.css" %}">
{% endblock %}
<title>{% block title %}Tzibor{% endblock %}</title>
</head>
<body>
<h1>It Works!</h1>
{% block scripts %}
<script type="text/javascript" src="{% static "scripts/jquery-1.6.2.min.js" %}"></script>
{% endblock %}
</body>
</html>
这是我的settings.py
:
DEBUG = True
TEMPLATE_DEBUG = DEBUG
ADMINS = (
)
MANAGERS = ADMINS
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.sqlite3',
'NAME': '/tmp/project.db',
'USER': '',
'PASSWORD': '',
'HOST': '',
'PORT': '',
}
}
TIME_ZONE = 'UTC'
LANGUAGE_CODE = 'en-us'
SITE_ID = 1
USE_I18N = True
USE_L10N = True
MEDIA_ROOT = '' # abs fs path to upload dir
MEDIA_URL = ''
STATIC_URL = '/static/'
ADMIN_MEDIA_PREFIX = '/media/'
SECRET_KEY = '4qo&twl!=ty!n%1@h2nidz^ie@$^uu@*pz)(ol%ise0&g6*@&_'
#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.contrib.messages.context_processors.messages",
#)
TEMPLATE_LOADERS = (
'django.template.loaders.filesystem.Loader',
'django.template.loaders.app_directories.Loader',
'django.template.loaders.eggs.Loader',
)
TEMPLATE_DIRS = (
)
MIDDLEWARE_CLASSES = (
'django.middleware.common.CommonMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
)
ROOT_URLCONF = 'project.urls'
INSTALLED_APPS = (
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.sites',
'django.contrib.messages',
'django.contrib.admin',
'django.contrib.admindocs',
'django.contrib.staticfiles',
'project.web',
'south',
)
基本上,我遵循了可用指南in Django's documentation on how to set up the static serving application,并得到了此错误。任何人都可以看到问题是什么?我错过了什么吗?
完整的堆栈跟踪here。
答案 0 :(得分:33)
你可能正在运行django 1.3!
所以,请注意django dev(1.4)和django 1.3之间的区别:
所以,如果你想使用“{%load staticfiles%}”,你必须使用django dev(1.4 +)
这是在django 1.3中使用的方法:
{% load static %}
<img src="{% get_static_prefix %}images/hi.jpg" />