Django 静态文件集合-徽标导航栏不显示

Django 静态文件集合-徽标导航栏不显示,django,Django,我试图在导航栏上有一个图像(徽标) 我的项目名为“mysite项目””(其中managepy是),它包含应用程序“mysite” 为了上传我的静态文件,我执行了以下操作: 1) mysite项目/mysite/settings.py from django.contrib import admin from django.urls import path, include from django.views.generic.base import TemplateView from django

我试图在导航栏上有一个图像(徽标)

我的项目名为“
mysite项目”
”(其中
managepy
是),它包含应用程序“
mysite

为了上传我的静态文件,我执行了以下操作:

1) mysite项目/mysite/settings.py

from django.contrib import admin
from django.urls import path, include
from django.views.generic.base import TemplateView
from django.conf import settings
from django.conf.urls.static import static

urlpatterns = [
    path('', TemplateView.as_view(template_name='home.html'), name='home'),
    path('admin/', admin.site.urls),
    path('users/', include('users.urls')),
    path('users/', include('django.contrib.auth.urls')),

] + static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)
我补充说:

STATIC_ROOT = os.path.join(BASE_DIR,"static")
STATIC_URL = '/static/'
STATICFILES_DIRS = [
    os.path.join(BASE_DIR, '/static/')
]
2) 创建文件夹
static
,并将my logo.png添加到:

mysite项目/static/mysite项目/logo.png

3) mysite项目/templates/base.html

{% load staticfiles %}
    <nav class="navbar navbar-expand-lg navbar-light bg-light">
      <a class="navbar-brand" href="{% url 'home' %}">

        <img src="{% static 'mysite/logo.png' %}" height=30 width=30 class="d-inline-block alighn-top" />
        Code of Conduct
      </a>
</nav>

但是图像不会显示。我想我在文件夹的设置.py中有一些问题,但我无法在您的STATICFILES\u DIRS设置中找到问题所在。如果您加入一个具有前导斜杠的路径,那么结果将“忽略”前面的任何参数,后面的所有参数都将与根相关

STATICFILES_DIRS = [
    os.path.join(BASE_DIR, '/static/')  # This will result in "/static/"
]


STATICFILES_DIRS = [
    os.path.join(BASE_DIR, 'static')  # This will result in "<BASE_DIR>/static/"
]

STATICFILES\u FINDERS
的默认值将在
STATICFILES\u DIRS
每个应用程序静态目录中查找。如果您使用的是git,您应该将repo根目录下的静态文件夹添加到。gitignore

您是否在Web服务器后面运行应用程序?但是你应该考虑在部署一个Web服务器后运行你的应用程序,它将直接从磁盘上服务你的静态文件(我建议NGIX)。我不确定你的意思,但是我ADDE <代码> +静态(Stuts.StasyTURLURL,DooptTrnRoo.= Stest.StasixRoad)在my
mysite project/mysite/url.py
中,您说您将静态文件添加到了“mysite project/static/mysite project/logo.png”中,这与img src“{%static'mysite/logo.png%}”中引用的静态文件不匹配
mysite
不匹配。您没有看到来自dev服务器日志的404吗?导航栏加载了图标,但没有呈现图像。即使我这样做了,问题仍然存在:
如果我运行
python manage.py collectstatic
我会得到错误:
FileNotFoundError:[Errno 2]没有这样的文件或目录:'/static'
谢谢,我把它改成了
'static'
没有
/static/
,但是现在我有错误:
?:(staticfiles.E002)STATICFILES\u DIRS设置不应包含STATIC\u ROOT设置
myproject/  # The root of your repo
    myproject/
        myapp/
            static/  # This is where you put app specific assets
                ...
        static/  # This is where you put your generic static assets. Add this to STATICFILES_DIRS
            ...
    static/  # This is STATIC_ROOT and where your files are served from after being collected