Pythonanywhere 'staticfiles' 不是有效的标记库:找不到模板库静态文件

Posted

技术标签:

【中文标题】Pythonanywhere \'staticfiles\' 不是有效的标记库:找不到模板库静态文件【英文标题】:Pythonanywhere 'staticfiles' is not a valid tag library: Template library staticfiles not foundPythonanywhere 'staticfiles' 不是有效的标记库:找不到模板库静态文件 【发布时间】:2015-01-28 09:37:15 【问题描述】:

在 pythonanywhere 中,我将 virtualenv 与 Django 1.7 和 Python 2.7 一起使用

Settings.py

STATIC_ROOT = '/home/movies/pantherlist/movies/static/'
STATIC_URL = '/static/'

INSTALLED_APPS = (
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'pantherlist.movies',
)

wsgi.py

activate_this = '/home/movies/.virtualenvs/django17/bin/activate_this.py'
execfile(activate_this, dict(__file__=activate_this))
.
.#path setup already done here
.
from django.core.wsgi import get_wsgi_application
application = get_wsgi_application()

我遇到错误

异常类型:TemplateSyntaxError 异常值: 'staticfiles' 不是有效的标签库:找不到模板库静态文件,尝试过 django.templatetags.staticfiles,django.contrib.admin.templatetags.staticfiles

异常位置:/usr/local/lib/python2.7/dist-packages/django/template/defaulttags.py in load,第 1054 行

错误在 index.html

% load staticfiles %

请帮忙。提前致谢。

【问题讨论】:

【参考方案1】:

自从将 virtualenv 激活添加到 wsgi 文件后,您似乎没有重新加载您的 Web 应用程序,或者您没有使用您认为正在使用的 wsgi 文件。 Django 报告的错误位置 (/usr/local/lib/python2.7/dist-packages/django/template/defaulttags.py) 在 PythonAnywhere 上的默认系统 Django 中,而不是 virtualenv 中的 Django。

【讨论】:

你是对的。我已经解决了。我在我的项目文件夹中创建了一个 wsgi 文件并正在更改它。那是一个错误。我应该直接更改“web”选项卡中的 pythonanywhere wsgi 文件。【参考方案2】:

试试:

% load static from staticfiles %

现在你可以这样使用它了:

% static "images/hi.jpg" as myphoto %
<img src=" myphoto "  />

这个例子来自 django doc for 1.7 version/

【讨论】:

以上是关于Pythonanywhere 'staticfiles' 不是有效的标记库:找不到模板库静态文件的主要内容,如果未能解决你的问题,请参考以下文章

文件也在 pythonanywhere 服务器和用户笔记本电脑/PC 上下载。如何限制在 pythonanywhere 服务器上写入

pythonanywhere笔记

可以从 PythonAnywhere 提供 IPython Notebook

PythonAnywhere 上的 JSONDecodeError

让 selenium 在 pythonanywhere 上工作

访问主页时出现 Pythonanywhere 错误