【问题标题】:Django not rendring correct image pathDjango没有呈现正确的图像路径
【发布时间】:2018-05-06 06:45:08
【问题描述】:

我的应用媒体文件夹中有图像,但 django 未呈现正确的图像路径。 这是我的设置 -

STATIC_URL = '/static/'
STATICFILES_DIRS = [os.path.join(BASE_DIR,'static'),]
MEDIA_ROOT = BASE_DIR
MEDIA_URL = '/'

在我的 html 中 -

<img style="" class="card-img-top img-fluid" src="{{object.cover_image.url}}" alt="">

它的显示图像src

src="/accounts/media/images/RAJASTHAN/SIKAR/332001/panshar8688/cover_image/1145452615/1145452615.jpg"

这看起来是正确的,但是当我进入管理面板并单击图片网址时,它显示错误-

"c:\Users\lenovo\Desktop\My_Django_Stuff\scratchcommerce10\media\images\RAJASTHAN\SIKAR\332001\Deepkha2623\cover_image\2187831623\2187831623.png" does not exist

并且路径不正确,因为媒体在帐户内,正确的路径是

c:\Users\lenovo\Desktop\My_Django_Stuff\scratchcommerce10\accounts\media\images\RAJASTHAN\SIKAR\332001\Deepkha2623\cover_image\2187831623\2187831623.png

图片保存在正确的目录但没有显示正确的路径,我无法弄清楚这个问题,如果可以请回答。

【问题讨论】:

  • 将 MEDIA_URL = '/' 更改为 MEDIA_URL = '/account/'
  • 实际上它把 url 改成了 -127.0.0.1:8000/accounts/accounts/media/images/RAJASTHAN/SIKAR/… 但路径还是一样的!!
  • 更改 MEDIA_ROOT = os.path.join(BASE_DIR,'accounts') 后,它可以工作,但不同应用程序中的所有其他图像都消失了!!

标签: django python-3.x django-forms django-templates django-views


【解决方案1】:

在该应用程序的 urls.py 中将其添加到 url 模式 -

+ static(MEDIA_URL, document_root=os.path.join(MEDIA_ROOT,'accounts'))

【讨论】:

    猜你喜欢
    • 2015-01-27
    • 2015-11-13
    • 2015-08-22
    • 2017-01-07
    • 2012-10-20
    • 2014-04-22
    • 1970-01-01
    • 2021-01-05
    • 2013-11-03
    相关资源
    最近更新 更多