如何解决当我更改 urlconfig 时,图像不会在 django
urlpatterns = [
path('admin/',admin.site.urls),path('<lang>/',home_page),path('',home_redirect),path('products/',include('products.urls')),]
在此代码中未加载图像时
urlpatterns = [
path('admin/',path('<lang>/products/',]
if settings.DEBUG:
# add root static files
urlpatterns = urlpatterns + static(settings.STATIC_URL,document_root=settings.STATIC_ROOT)
# add media static files
urlpatterns = urlpatterns + static(settings.MEDIA_URL,document_root=settings.MEDIA_ROOT)
我必须提到我的问题不是显示 404 页面......我的页面已加载但页面中的图像未加载并显示替代文本而不是图像
在“products.urls.py”中
urlpatterns = [
path('<category>',ProductsListByCategory),path('<category>/<product_id>/<product_name>',product_detail),]
和“product_list.html”
<img src="{{ product.image.url }}"class="img-fluid img-card " alt="
{{product.name }}">
我不知道解决它...
解决方法
看起来您的网址格式 '<lang>/<category>'
正在捕获您的所有媒体网址。 Django 使用第一个匹配 url 的 url 模式。更改添加媒体网址的方式:
if settings.DEBUG:
# add root static files
urlpatterns = static(settings.STATIC_URL,document_root=settings.STATIC_ROOT) + urlpatterns
# add media static files
urlpatterns = static(settings.MEDIA_URL,document_root=settings.MEDIA_ROOT) + urlpatterns
这将使您的媒体和静态 url 位于您的 urlpatterns 列表的开头,因此没有其他模式会首先捕获它们。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。