Lif*_*his 0 python django django-oscar
我正在使用Oscar-Django 电子商务项目,我正在关注教程Frobshop
该网站已启动并正在运行,但是,当我从管理仪表板添加产品并上传图片时,缩略图未加载,并且当我在客户视图中查看产品时,图片丢失了。
这是我在 settings.py 文件中的配置:
STATIC_URL = '/static/'
MEDIA_URL = '/media/'
MEDIA_ROOT = location("public/media")
STATIC_ROOT = location('public/static')
当我从客户视图查看产品时,终端显示 404 GET
"GET /media/cache/45/ec/45ecfa8787510d3ed6997925b6e26ed7.jpg HTTP/1.1" 404 4880
当我转到站点的管理部分并尝试单击产品表中的图片时,它也显示“找不到页面”,这次的 URL 是
http://127.0.0.1:8000/media/images/products/2017/09/hoodie1.jpeg
当我浏览到特定产品(仍在管理站点上)时,该产品的图像部分未显示缩略图,终端显示此内容
"GET /media/cache/cd/8a/cd8af791d513ec91a583b0733070d9a7.jpg HTTP/1.1" 404 4880
这是来自 URLs.py 的模式
urlpatterns = [ url(r'^i18n/', include('django.conf.urls.i18n')),
Run Code Online (Sandbox Code Playgroud)# The Django admin is not officially supported; expect breakage. # Nonetheless, it's often useful for debugging. url(r'^admin/', include(admin.site.urls)), url(r'', include(application.urls)), ]
我在 Finder 中看到这条路径下的图片
/frobshop/frobshop/public/media/images/products/2017/09
感谢您对解决此问题的任何帮助!
谢谢!
小智 5
你需要在你的底部添加以下内容urls.py:
from django.conf import settings
if settings.DEBUG:
from django.conf.urls.static import static
from django.contrib.staticfiles.urls import staticfiles_urlpatterns
# Serve static and media files from development server
urlpatterns += staticfiles_urlpatterns()
urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
Run Code Online (Sandbox Code Playgroud)
这仅限于settings.DEBUG==True在生产中您希望使用 nginx 或等效物提供静态和媒体服务。
这不是 Oscar 文档中涵盖的内容,因为它是 Django 级别的问题,但可能应该提及。
| 归档时间: |
|
| 查看次数: |
2853 次 |
| 最近记录: |