在django中显示图像错误的网址

时间:2015-03-15 07:32:38

标签: python django image url

我正在使用django 1.7。我在显示上传的图像时遇到了困难。页面的源代码显示网址

http://127.0.0.1:8888/user/<user.slug>/images/user/main/IMG_3826.JPG

但该文件夹不存在。我应该在代码中更改什么以从中移除/user/<user.slug>

urls.py

urlpatterns += patterns('',
                        (r'^media/(?P<path>.*)$', 'django.views.static.serve', {
                         'document_root': settings.MEDIA_ROOT}))

settings.py

MEDIA_ROOT = (os.path.join(ROOT_DIR, 'images'))
MEDIA_URL = '/images/'

1 个答案:

答案 0 :(得分:0)

(我假设您了解自定义过滤器) 一个解决方案是使自定义模板过滤器删除&#34; / user /&#34;来自http://127.0.0.1:8888/user/ / images / user / main / IMG_3826.JPG的字符串  像这样。您可以在django网站上找到参考来制作自定义过滤器。

{{page_user.myuserprofile.image | remove_url}}

在tempplatetag中的

写下代码:

def remove_url(url):
    u = url.split('/')
    u1 = u[0]+"/"+u[3]+"/"+u[4]+"/"+u[5]+"/"+u[6]
    return u1

这会让你回归 http://127.0.0.1:8888/images/user/main/IMG_3826.JPG