html - 在 django 模板中显示图像
问题描述
我正在从数据库中查询图像并以 HTML 格式显示它们。
我的views.py是
@login_required
def viewall(request):
context = RequestContext(request)
images = Images.objects.all().order_by('-id')
return render_to_response('cms/view-all.html',{'images':images,'media_url':settings.MEDIA_URL},context)
我的 view-all.html 是
{% extends "cms/base.html" %}
{% block title %}
View-all
{% endblock %}
{% block main %}
{% for image in images %}
<img src="{{ media_url }}{{ image.file }}">
{% endfor %}
{% endblock %}
在 settings.py
MEDIA_URL = '/media/'
MEDIA_ROOT = os.path.join(PROJECT_PATH, 'media')
我的图像在项目目录文件 /media/images 中。
但是图像没有显示出来。我越来越这样了。
这里可能有什么问题?
解决方案
您需要将媒体 url 添加到项目的 urlpatterns:
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)
在此处查看详细信息。
推荐阅读
- java - 如何使用发布请求将数据保存在 Cosmos DB 中?
- c++ - 如何使用 cmake 在 vs 代码中包含、构建和调试共享库(.so)?
- terraform - 您如何将一种资源的输出值作为输入分配给另一种资源?
- python - 按大小删除图像
- c# - 如何在单元格中转换带有产品名称和相应产品图像的excel并存储到sqlserver
- javascript - Wordpress - 使用帖子搜索编辑自定义 Metabox
- javascript - 如何查找值是否在嵌套数组中
- reactjs - 如何将反冲库与 react-native 集成?
- c++ - 处理多种通信协议处理的设计类
- php - 使用带有散列密码的 PHP 重置密码