使用 collectstatic 复制到 STATIC_ROOT 但图像不可见

问题描述

需要按照建议从公共目录访问静态文件

https://docs.djangoproject.com/en/3.2/ref/contrib/staticfiles/

命令,python manage.py collectstatic

复制到 STATIC_ROOT 但在 html 中引用它时,它抛出错误

Not Found: /static/teststatic/images/product-5.jpg

如何使用来自 STATIC_ROOT 位置的文件

我已经尝试过这个并且成功了

<img src="{% static 'teststatic/static/teststatic/images/product-5.jpg' %}" alt="Trulli" width="500" height="333">

urls.py

from django.urls import path
from . import views

app_name = 'teststatic'

urlpatterns = [
    path('tstatic/',views.tstatic,name='tstatic'),]

views.py

from django.shortcuts import render

# Create your views here.


def tstatic(request):
    return render(request,'tstatic.html',{})

settings.py

DEBUG = True
.
.
STATIC_ROOT = os.path.join(BASE_DIR,'static')
STATIC_URL = '/static/'


STATICFILES_FINDERS = [
    'django.contrib.staticfiles.finders.FileSystemFinder','django.contrib.staticfiles.finders.AppDirectoriesFinder',]

STATICFILES_Dirs = (
    ('testcss',os.path.join(BASE_DIR,'testcss','static','testcss')),('helpdesk','helpdesk','helpdesk')),('teststatic','teststatic','teststatic')),(os.path.join(BASE_DIR,'staticfiles'))
)

STATICFILES_STORAGE = 'django.contrib.staticfiles.storage.StaticFilesstorage'

tstatic.html

{% load staticfiles %}
<!DOCTYPE html>
<html>
<body>

<h2>HTML Image</h2>
<img src="{% static 'teststatic/images/product-5.jpg' %}" alt="Trulli" width="500" height="333">

</body>
</html>

错误

2021-04-27 12:42:47,744: Not Found: /static/teststatic/images/product-5.jpg

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...