2016-08-13 77 views
1

第一篇文章很溫柔​​。找不到頁面django.views.static.serve

我想在django中顯示靜態圖像。我可以將圖像上傳到我的媒體目錄,但是當我嘗試顯示它時,我什麼都沒有。如果我的網址複製到瀏覽器中,我得到...

找不到網頁(404) 請求方法:GET 請求URL:http://127.0.0.1:8000/media/Will_and_Matt.jpg 上調:django.views.static.serve

細節。 PY

... 
<img src="{{ student.photo.url }}" class="img-responsive"> 
... 

model.py

class Student(models.Model): 
    photo = models.FileField(blank=True, null=True) 

項目urls.py

from django.conf.urls import url, include 
from django.contrib import admin 
from django.conf import settings 
from django.conf.urls.static import static 


urlpatterns = [ 
    url(r'^admin/', admin.site.urls), 
    url(r'^opencmis/', include('opencmis.urls')), 
] 

if settings.DEBUG: 
    urlpatterns += static(settings.STATIC_URL, document_root=settings.STATIC_URL) 
    urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_URL) 

settings.py

STATIC_URL = '/static/' 
STATIC_ROOT = os.path.join(BASE_DIR, 'static') 

MEDIA_ROOT = os.path.join(BASE_DIR, 'media') 
MEDIA_URL = '/media/' 

我的更新形式的作品,因爲它創建的媒體文件夾,並在裏面放置的圖像。

該URL模式似乎匹配/媒體,因爲它不會給出錯誤,它只是不顯示圖像。

任何想法?

+1

'document_root = settings.STATIC_URL'應該是['document_root = settings.STATIC_ROOT'](https://docs.djangoproject.com/zh/1.10/howto/static-files/#serving-static-files -during-development)和'MEDIA_ROOT'類似。你需要那裏的文件系統路徑,而不是URL。 – dhke

+0

你先生,是一個紳士。這工作完美! – user1738005

回答

0

document_root = settings.STATIC_URL應該是document_root = settings.STATIC_ROOT和類似的MEDIA_ROOT。你需要那裏的文件系統路徑,而不是URL。 - dhke