2017-08-24 127 views
1

我是新的Django。我在文檔上和本網站上閱讀了很多關於我的問題的文章。但我真的不明白我應該怎麼做才能做到這一點。有人可以告訴我所有的步驟嗎?ImageField Django模板

model.py:

class Post(models.Model): 
    title=models.CharField(max_lengt=50) 
    img=models.ImageField(upload_to = 'images') 

模板:

{% for post in posts %} 
    <h1> {{post.title}} </h1> 
    <img src="{{post.img}}"> 
{% endfor %} 

settings.py

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

如果我訪問ADMI n頁,如何上傳圖片?在模板中,我看不到圖像!

對不起,我的英語不好。請幫助我

回答

1

template,使用方法:

{% for post in posts %} 
<h1> {{post.title}} </h1> 
<img src="{{ post.img.url }}"> 
{% endfor %} 

您必須添加{{ post.img.url }}

此外,還要確保在urls.py,您有:

from django.conf import settings 
from django.conf.urls.static import static 

urlpatterns = [ 
    # ... the rest of your URLconf goes here ... 
] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) 

它會奏效。