Django块标记无效:'静态'

时间:2016-01-07 18:44:45

标签: python django

我在base.html的<head>中有这个。

{% load staticfiles %}
<link rel="stylesheet" type="text/css" href="{% static "myStyleSheet.css" %}">

我收到错误无效的块标记:&#39;静态&#39;

在INSTALLED_APPS中我已经包含

'django.contrib.staticfiles',

并且我已经包含在settings.py

STATIC_URL = '/static/' 
STATIC_ROOT = os.path.join(os.path.dirname(__file__), "static/")

为什么我会收到加载错误?

6 个答案:

答案 0 :(得分:1)

这里的实际问题,我很遗憾地说,是在我的app.yaml文件中,我为静态文件指定了一个不同的目录,它似乎覆盖了其他所有内容。一旦删除,所有已排序。

答案 1 :(得分:0)

您的?- printlist([1,2,3]). false. 设置中是否有django.core.context_processors.static上下文处理器?这是一个示例:

TEMPLATE

您可以在其中添加或在模板中使用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', 'django.core.context_processors.static', ], }, }, ]

答案 2 :(得分:0)

使用{% load static %}{% load static from staticfiles %}

请检查https://stackoverflow.com/a/27516199/263989

答案 3 :(得分:0)

似乎一切都很好。检查static单词是否仅使用英文字母书写,可能是因为这个原因。

答案 4 :(得分:0)

您可以更改

var Dropdown = React.createClass({
  getInitialState: function () {
    return{firstTime: true};
  },
  change: function(event){
    var x = event.target;
    this.state.firstTime==true ? ReactDOM.render(<Dropdown options={OptionChoices} dropdownClass="Poop" />, wrapper) : console.log("oh well");
    this.setState({firstTime: false});
  },
  render: function() {
    return (
      <select onChange={this.change} className={this.props.dropdownClass}>
        {this.props.options.map(function(option){
          return (
              <Option value={option.value} key={option.value}>{option.label}</Option>
            );
        })}
    </select>
    );
  }
});

href="{% static "myStyleSheet.css" %}"

href="{% static 'myStyleSheet.css' %}"

的单引号

答案 5 :(得分:0)

这里有很多答案,但也可以尝试一下。我要描述一切。忘记并清除之前添加的任何内容,并按照这些提示进行操作

1-在你的 settings.py INSTALLED_APPS你应该有 'django.contrib.staticfiles',

以及STATIC_URL = '/static/'。默认情况下,它存在于文件的末尾,但请自行检查

2- settings.py 您的TEMPLATES应如下所示

TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': [os.path.join(BASE_DIR,'templates')],
        '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',
                'django.core.context_processors.static',
            ],
        },
    },
]

请勿尝试再次添加此内容!只检查错误

3- static文件夹必须位于应用程序目录中,而不是项目的主目录

project
    -application
        -migrations
        -static
        -templates

4- static文件夹中为您的文件创建子目录,例如

project
    -application
        -static
            -css
            -js
            -img
            -....
            -....

并将您的文件放到特定文件夹

5-现在在您的HTML文件中首先添加{% load staticfiles %}文件,并在任何需要静态文件的地方尝试添加,如下所示

<link href="{% static "css/myStyleSheet.css" %}" rel="stylesheet">

<link rel="icon" href="{% static "img/favicon.png" %}">

如果你遵循这些提示,一切都应该没问题。再次测试和报告