我是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/'
如果我访问管理页面,我该如何上传图片?在模板中,我看不到图像!
抱歉我的英语不好。请帮帮我
答案 0 :(得分: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)
它会起作用。