【问题标题】:Pycharm + Django 1.3 + STATIC_URL in templates = Unresolved static referencePycharm + Django 1.3 + 模板中的 STATIC_URL = 未解析的静态引用
【发布时间】:2012-01-19 05:16:39
【问题描述】:

我的 Django 1.3 项目中的 PyCharm(1.3 和 2 测试版)在检查我的脚本和样式包含的模板时会引发很多“未解决的静态引用”错误。

In an outdated PyCharm doc,我发现一个小指南不适用于我的情况,因为我的静态文件分布在多个应用程序中。将我的静态目录添加到 STATICFILES_DIRS 也不起作用。

Dir structure (simplified):
  app1/static/js/file.js
  app1/static/css/file.css
  app2/static/js/otherfile.js
  app2/static/css/otherfile.css
  templates/template.html

Template.html:
  <script src="{{ STATIC_URL }}js/file.js"></script>

file.js 在我访问本地主机上的模板时解析,但在 PyCharm 中没有。

如何在 PyCharm 中解析静态文件?

【问题讨论】:

  • 有点晚了,但这应该可以开箱即用。您不需要将应用的静态添加到 STATICFILES_DIRS 中,这应该可以。

标签: django pycharm


【解决方案1】:

转到 Pycharm 2.73 中的设置

Settings &gt;&gt; Project Setting &gt;&gt; Django

启用 Django 支持并提供以下三个文件的路径:

Project Root
Settings file
Manage.py file

当您提供这些信息后,关闭 PyCharm 并重新启动它。

【讨论】:

    【解决方案2】:

    PyCharm 2.5 再次找到我的静态文件。

    诀窍是将 app1/static 和 app2/static 标记为“Source Root”。

    STATICFILES_DIRS 不适合我。

    【讨论】:

    • 这对我也有用,2.7 EAP。恕我直言,这应该通过解析 settings.py 文件开箱即用。
    【解决方案3】:

    所选答案对我不起作用。解决它的是在 STATICFILES_DIRS 中使用前缀:

    STATICFILES_DIRS = (
        # ...
        ("resources", "C:/data/django/myproject/myapp/static"), )
    

    如 django 文档中所述:https://docs.djangoproject.com/en/1.4/ref/contrib/staticfiles/

    然后在你的html模板中:

    <link rel="stylesheet" href="{%static 'resources/favicon.png' %}" type="text/css">
    

    【讨论】:

      【解决方案4】:

      STATICFILES_DIRS

      工作
      {% static "js/lib/jquery-1.8.2.min.js" %}
      

      模板中的标签。 不适用于{{ STATIC_URL }}js/lib/jquery-1.8.2.min.js

      http://youtrack.jetbrains.com/issue/PY-5568

      【讨论】:

        猜你喜欢
        • 2014-02-11
        • 2014-05-23
        • 1970-01-01
        • 2012-01-21
        • 2011-10-22
        • 1970-01-01
        • 1970-01-01
        • 2012-02-28
        • 2014-09-17
        相关资源
        最近更新 更多