Python Can';我好像没有在Django中加载图像?
这应该是非常直截了当的,但我感觉其中一个路径名把整个事情搞砸了。基本上,我的图像显示为404 以下是我的Django应用程序的相关部分: 型号.pyPython Can';我好像没有在Django中加载图像?,python,django,url,django-admin,django-models,Python,Django,Url,Django Admin,Django Models,这应该是非常直截了当的,但我感觉其中一个路径名把整个事情搞砸了。基本上,我的图像显示为404 以下是我的Django应用程序的相关部分: 型号.py class MemeDetails(models.Model): datecreated = models.DateTimeField(default=datetime.datetime.now) profileimage = models.ImageField(upload_to="memeimages", blank=True)
class MemeDetails(models.Model):
datecreated = models.DateTimeField(default=datetime.datetime.now)
profileimage = models.ImageField(upload_to="memeimages", blank=True)
name = models.CharField(max_length=50)
description = models.CharField(max_length=1000)
origin = models.CharField(max_length=50)
origindate = models.DateField()
MEDIA_ROOT = '/home/nai/Projects/meme/media/'
MEDIA_URL = '/media/'
urlpatterns = patterns('',
(r'^media/(?P<path>.*)$', 'django.views.static.serve',
{'document_root': settings.MEDIA_ROOT}),
)
def memepage(request, memeid):
q = MemeDetails.objects.get(id=memeid)
memeimage = q.profileimage
return render_to_response('memepage.html', {'memeid': memeid, 'memeimage': memeimage},context_instance=RequestContext(request))
设置.py
class MemeDetails(models.Model):
datecreated = models.DateTimeField(default=datetime.datetime.now)
profileimage = models.ImageField(upload_to="memeimages", blank=True)
name = models.CharField(max_length=50)
description = models.CharField(max_length=1000)
origin = models.CharField(max_length=50)
origindate = models.DateField()
MEDIA_ROOT = '/home/nai/Projects/meme/media/'
MEDIA_URL = '/media/'
urlpatterns = patterns('',
(r'^media/(?P<path>.*)$', 'django.views.static.serve',
{'document_root': settings.MEDIA_ROOT}),
)
def memepage(request, memeid):
q = MemeDetails.objects.get(id=memeid)
memeimage = q.profileimage
return render_to_response('memepage.html', {'memeid': memeid, 'memeimage': memeimage},context_instance=RequestContext(request))
因此,所有图像都会进入这个文件夹home/nai/Projects/meme/media/memeimages
url.py
class MemeDetails(models.Model):
datecreated = models.DateTimeField(default=datetime.datetime.now)
profileimage = models.ImageField(upload_to="memeimages", blank=True)
name = models.CharField(max_length=50)
description = models.CharField(max_length=1000)
origin = models.CharField(max_length=50)
origindate = models.DateField()
MEDIA_ROOT = '/home/nai/Projects/meme/media/'
MEDIA_URL = '/media/'
urlpatterns = patterns('',
(r'^media/(?P<path>.*)$', 'django.views.static.serve',
{'document_root': settings.MEDIA_ROOT}),
)
def memepage(request, memeid):
q = MemeDetails.objects.get(id=memeid)
memeimage = q.profileimage
return render_to_response('memepage.html', {'memeid': memeid, 'memeimage': memeimage},context_instance=RequestContext(request))
模板
<img src="{{ MEDIA_URL }}{{memeimage }}" />, {{ memeid }}
,{{memeid}
图像的实际URL位于此URLhttp://127.0.0.1:8000/media/memeimages/flickrphotobrowser.png
但我得到的是404
另外,我知道我应该使用Apache在我的生产环境中提供静态图像。我只是想让它发挥作用
救命啊 更改媒体URL
媒体http://127.0.0.1:8000/media/“您的
ADMIN\u MEDIA\u前缀可能也是/MEDIA/
。换一个。对不起,我打错了。我的媒体URL只是/MEDIA/
哇,我不知道怎么会有人(特别是初学者)知道这一点。