如何让PyCharm识别静态文件?

2024-03-28 18:55:46 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个Django项目看起来像:

/.idea
/clients
     /app
         /static
             coin.png
         /templates
             index.html
         __init__.py
         urls.py
     /clients
         settings.py
     manage.py

在index.html中我有(我可以在渲染时看到图像):

{% load staticfiles %}

<img src="{% static 'coin.png' %}">

settings.py的相关部分:

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

STATICFILES_DIRS = (
    os.path.join(os.path.dirname(__file__), '../static/'),
)

INSTALLED_APPS = (
    'django.contrib.staticfiles',
)

TEMPLATE_CONTEXT_PROCESSORS = (
    'django.core.context_processors.static',
)

在project structure中,我添加了/clients,因为Django项目的根是repo根的上一级。然而,我在这个项目中使用的所有{% static %}都会得到不存在的亮点,即使Django可以找到它们。关于如何解决这个问题的想法?


Tags: path项目djangopyindexsettingspngos
2条回答
STATICFILES_DIRS = (
    'static',
)

上面假设静态目录名为static,就在根目录下。现在需要做os.path.join。我已经试过了。

您需要设置以下设置,以告诉PyCharm在哪里可以找到项目根目录:

enter image description here

Django settings to set (image)

您还可以使用{{STATIC}URL}/path/to/files,这与pycharm的工作方式不同

这真是奇迹。不过,这有点奇怪。

相关问题 更多 >