Pycharm + Django 1.3 +模板中的 STATIC_URL = 未解析的静态引用

发布于 2024-12-21 02:05:45 字数 679 浏览 2 评论 0原文

我的 Django 1.3 项目中的 PyCharm(1.3 和 2 beta)在检查我的模板中的脚本和样式包含时抛出许多“未解析的静态引用”错误。

在过时的 PyCharm 文档中,我发现一个小指南没有在我的情况下工作,因为我的静态文件分布在多个应用程序中。将我的静态目录添加到 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 中解析静态文件?

PyCharm (1.3 and 2 beta) in my Django 1.3 project throws a lot of "unresolved static reference" errors when inspecting my templates for script and style includes.

In an outdated PyCharm doc, I found that a small guide that doesn't work in my situation, because my static files are spread over multiple apps. Adding my static dirs to STATICFILES_DIRS also didn't work.

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 resolves when I visit the template on localhost, but not in PyCharm.

How do I make static files resolve in PyCharm?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

南笙 2024-12-28 02:05:45

转到 Pycharm 2.73 中的设置

Settings >>>项目设置>> Django

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

Project Root
Settings file
Manage.py file

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

Go to Settings in Pycharm 2.73

Settings >> Project Setting >> Django

Enable the Django support and provide the paths for the three following files:

Project Root
Settings file
Manage.py file

When you have given these informations, close PyCharm and restart it.

傲世九天 2024-12-28 02:05:45

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

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

STATICFILES_DIRS 不适合我。

PyCharm 2.5 finds my static files again.

The trick is to mark app1/static and app2/static as "Source Root".

STATICFILES_DIRS is not working for me.

习ぎ惯性依靠 2024-12-28 02:05:45

所选答案对我不起作用。解决这个问题的方法是在 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">

The selected answer doesn't work for me. What solved it is using a prefix in STATICFILES_DIRS:

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

as documented in the django docs: https://docs.djangoproject.com/en/1.4/ref/contrib/staticfiles/

Then in your html template:

<link rel="stylesheet" href="{%static 'resources/favicon.png' %}" type="text/css">
爱的故事 2024-12-28 02:05:45

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

STATICFILES_DIRS works for

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

tag in template.
Not for {{ STATIC_URL }}js/lib/jquery-1.8.2.min.js

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

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文