首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >django-photologue为照片构造了错误的URL

django-photologue为照片构造了错误的URL
EN

Stack Overflow用户
提问于 2011-10-21 07:43:52
回答 1查看 940关注 0票数 2

我已经安装了django-photologue,并将一些照片添加到数据库中。基本的站点机制似乎工作得很好,除了没有显示任何照片或缩略图。图片和缩略图是..\django\media\photologue\photos格式的。

对于photo_detail页面,生成的HTML源如下所示:

代码语言:javascript
复制
<title>Greece 3</title>
<h1>Greece 3</h1>
<div class="gallery-photo">
  <a href="photologue/photos/greece003.jpg"><img src="photologue/photos/cache/greece003_display.jpg" alt="Greece 3"/></a>
  <p>no caption yet</p>
</div>
<h2>This photo is found in the following galleries:</h2>
<ol>
  <li>
    <a title="Greece 2" href="/photologue/photo/greece-2/"><img src="photologue/photos/cache/greece002_thumbnail.jpg"/></a>
    <a href="/photologue/gallery/greece/">LSB Photos - Greece</a> 
    <a title="Greece 4" href="/photologue/photo/greece-4/"><img src="photologue/photos/cache/greece004_thumbnail.jpg"/></a>
  </li>
</ol>

在我看来,img src文件没有解析到正确的位置,因此无法显示。我认为MEDIA_ROOT和MEDIA_SITE是正确的,其他应用程序的媒体功能也和我预期的一样。

代码语言:javascript
复制
>>> import settings
>>> settings.MEDIA_ROOT
'c:/design.ed/django/media/'
>>> settings.MEDIA_URL
''

这是photologue模块本身给我的功能。

代码语言:javascript
复制
>>> from photologue import models as phl
>>> phl.PHOTOLOGUE_DIR
'photologue'
>>> phl.PHOTOLOGUE_PATH
>>> phl.get_storage_path(None, 'foo.jpg')
'photologue\\photos\\foo.jpg'

这里我漏掉了什么?

EN

回答 1

Stack Overflow用户

发布于 2011-10-26 07:36:55

我想我已经回答了我自己的问题。这个问题与照片无关:相反,settings.MEDIA_URL设置不正确(因为我以前从未真正通过Django为任何媒体提供服务)。

在我的例子中,我使用默认的Django服务器在本地运行(我知道在生产环境中不应该这样做)。所以我的urls.py里有这个:

代码语言:javascript
复制
(r'^site_media/(?P<path>.*)$', 'django.views.static.serve',
   {'document_root': MEDIA_ROOT, 'show_indexes': True}),

但是MEDIA_URL是默认的空字符串。相反,我将其改为

代码语言:javascript
复制
MEDIA_URL = '/site_media/'

这就是它应该在的位置(在本例中,前导斜杠和尾随斜杠都是必需的),并且所有的魔术都起作用了。很抱歉用照片细节遮蔽了这个问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7843557

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档