社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  问与答

django无法显示已上传的图片,图片保存在网站根目录下media/photos/下

eddie • 9 年前 • 8053 次点击  

直接上代码吧,我的setting.py中有关文件的代码如下:

MEDIA_URL = '/media/'
MEDIA_ROOT = os.path.join(BASE_DIR, 'media').replace('\\', '/')
STATIC_URL = '/static/'
STATICFILES_DIRS = (os.path.join(BASE_DIR, 'static').replace('\\', '/'),)

我的网站首页html里面用到了存在/static/下的图片,可以正常显示,如下:

<img src='/static/fengmian.jpg'>

我在studio这个APP的models.py代码如下:

from django.db import models
from django.contrib import admin
class Photo(models.Model):
    title = models.CharField(max_length=50)
    image = models.ImageField(upload_to='photos')
    description = models.TextField(blank=True)
    class Meta:
        ordering = ('title',)
    def __unicode__(self):
        return self.title
    @models.permalink
    def get_absolute_url(self):
        return 'photo_detail', None, {'object_id': self.id}
admin.site.register(Photo)

但是在另一个html中,想要显示存在/media/photos/下的图片,就无法显示了,代码如下:

<img src='/media/photos/aaa.jpg'>

上面发的代码,拼写都对,应该不会笔误。请各位大神帮忙给看看,搞了两个晚上了,都没有搞出来T。T谢谢各位!!!

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/1355
 
8053 次点击  
文章 [ 3 ]  |  最新文章 9 年前
shuyeyaojing
Reply   •   1 楼
shuyeyaojing    6 年前

兄弟,解决了没啊,我也遇上这个问题了,仔细看前端的url,发现它吧/index/加到路径里面去了,怎么去掉啊

eddie
Reply   •   2 楼
eddie    9 年前

@三十撸啊撸 太感谢了,尽管我昨晚已经找到了这个方法。为什么网上很难找到这个答案,我是看了Django1.8的Documentation才发现的,难道版本不同,差异会很大么?

三十撸啊撸
Reply   •   3 楼
三十撸啊撸    9 年前

在你的project的urls.py里加入

urlpatterns = [

# ... the rest of your URLconf goes here ...

] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)

eddie
Reply   •   4 楼
eddie    9 年前

我尝试在html中打印出它的路径,如下:

{{ photo.image.url }}

在网页中也显示出: /media/photos/aaa.jpg 这正是我所要显示图片的路径,但就是没法显示图片,求解!!