Django:不能在网页中包含静态文件

时间:2016-03-01 14:26:57

标签: python django python-2.7 django-staticfiles django-1.9

我知道有几个这样的问题,但没有一个对我有用。我有django版本1.9.2。文档没有多大帮助,因为我发现它很混乱。这是我的设置

myApp-

      static-
              myApp-
                    scripts-
                            scripts.js
                    images-
                            xyz.png
      templates-
              myApp-

                    index.html

settings.py我有

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'campaign.apps.CampaignConfig'
]

TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': [],
        'APP_DIRS': True,
        'OPTIONS': {
            'context_processors': [
                'django.template.context_processors.debug',
                'django.template.context_processors.request',
                'django.contrib.auth.context_processors.auth',
                'django.contrib.messages.context_processors.messages',
            ],
        },
    },
]

STATIC_URL = '/static/'

我的网页已

<script language="javascript">var STATIC_URL = '/static/';</script>
<script src="{{ STATIC_URL }}myApp/scripts/scripts.js"></script>

这并没有得到认可。这不是

<img src="{{ STATIC_URL }}myApp/images/xyz.png">

我需要做出哪些其他更改?这是正确的方法吗?

1 个答案:

答案 0 :(得分:2)

您应该使用static模板标记

{% load static %}
<img src="{% static 'myApp/images/xyz.png' %}">