Django无效的块标记:'static'意味着什么?

alm*_*ner 1 python django

(我正在使用Django 1.3 - Python 2.7)

经过所有相关问题,没有任何解决方案.

语法错误在第5行,而不是第1行:

{% load static %}
<html>
    <head>
          <link rel="stylesheet" href="{% static 'css/home.css' %}">
Run Code Online (Sandbox Code Playgroud)

在审核相关问题后,一些建议的第一行应改为:

{% load staticfiles %}
Run Code Online (Sandbox Code Playgroud)

我试过,而不是"无效的块标记:'静态'"错误,我得到:

'staticfiles'不是有效的标记库:找不到模板库staticfiles,尝试过django.templatetags.staticfiles,django.contrib.admin.templatetags.staticfiles

我仔细检查了设置文件:

STATIC_ROOT = '/home/username/mysite/static'
# URL prefix for static files.
# Example: "http://media.lawrence.com/static/"
BASE_DIR = os.path.dirname(os.path.abspath(__file__))
STATIC_URL = '/static/'
STATIC_ROOT = os.path.join(BASE_DIR, 'static')

INSTALLED_APPS = (
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.sites',
'django.contrib.messages',
'django.contrib.staticfiles',
# Uncomment the next line to enable the admin:
'django.contrib.admin',
# Uncomment the next line to enable admin documentation:
# 'django.contrib.admindocs',
'mysite.myapp',
 )
Run Code Online (Sandbox Code Playgroud)

变成"Debug = False"

......和其他建议.但我仍然得到同样的两个错误.

文件结构是:

mysite包含以下文件夹/文件:myapp,media,static,settings.py,...

myapp包含以下文件夹/文件:static,templates,views.py,...

mysite - > static和myapp - > static包含相同的文件夹和文件.

请询问您是否需要更多信息.

任何帮助/方向将不胜感激.谢谢.

Dim*_*osh 6

在Django 1.3中没有静态标记,你必须像这样使用它:

{% load static %}
<img src="{% get_static_prefix %}images/hi.jpg" />
Run Code Online (Sandbox Code Playgroud)

或者向TEMPLATE_CONTEXT_PROCESSORS添加静态并直接从模板使用STATIC_URL:

#  settings.py
TEMPLATE_CONTEXT_PROCESSORS = (
    #  other processors
    ’django.core.context_processors.static’,
)

#  some.html
<img src="{{ STATIC_URL }}images/hi.jpg" />
Run Code Online (Sandbox Code Playgroud)