Html 在Django应用程序中显示本地图像

Html 在Django应用程序中显示本地图像,html,django,image,templates,Html,Django,Image,Templates,是否可以显示本地存储在django应用程序上的图像?我目前正在构建一个与web服务集成的工作流,我动态分析了用户上传的数据,然后在本地处理并保存(即,不在静态目录中)。我目前正在尝试构建一些最低限度可行的东西,然后再使其“正式正确”(我知道我应该将我想要显示的图像存储在静态目录中,但由于它们不是静态的,这对我来说没有多大意义,因为用户可以上传和删除他们处理过的数据,所以它不一定总是在那里;工作流目前在web服务外部,所以我希望集成它们由于集成本身可能需要几个月的时间,因此我需要一些在演示之前最少

是否可以显示本地存储在django应用程序上的图像?我目前正在构建一个与web服务集成的工作流,我动态分析了用户上传的数据,然后在本地处理并保存(即,不在静态目录中)。我目前正在尝试构建一些最低限度可行的东西,然后再使其“正式正确”(我知道我应该将我想要显示的图像存储在静态目录中,但由于它们不是静态的,这对我来说没有多大意义,因为用户可以上传和删除他们处理过的数据,所以它不一定总是在那里;工作流目前在web服务外部,所以我希望集成它们由于集成本身可能需要几个月的时间,因此我需要一些在演示之前最少工作的东西。我将要显示的图像存储在本地(它们是在用户上传数据后在工作流中创建的),生成模板化HTML时,我期望的路径实际显示(即,在浏览和查看HTML时,显示的路径是图像在我的计算机上本地的路径),但是,Django传递了以下错误:

Not Found: /local/path/to/analysis/analysisdirs/img.png
当我尝试在本地打开图像时,它们显示得很好(因此它们实际上是存在的)。是否有一种方法可以动态添加图像,以便django只能在显示的特定渲染中找到它们(即,一旦分析了一批文件,它会将它们临时添加到静态路径中,如果删除了这批文件,则会将它们删除)

当我转到应该显示图像的页面时,只有一个空白区域用于显示带有alt文本的图像,当我查看html时,它显示:

<img src="/local/path/to/analysis/analysis_dirs/img.png" alt="My Image" height="600" width="700">
我希望它能起到作用,但可惜没有:(

所以我希望当我打电话时:

context = {'img': '/local/path/to/analysis/analysis_dirs/img.png'}
render(request, 'myapp/mytemplate.html', context)
其中template.html具有:

<img src="{{ img }}" alt="My Image" height="600" width="700">
运行特定分析时,以及删除特定分析时:

static_media_path -= '/local/path/to/analysis/'

我猜您是在本地机器上以调试模式开发的,添加了吗

from django.conf import settings
from django.views.static import serve

#at the end of file
if settings.DEBUG:
    urlpatterns += [
        url(r'^/local/path/to/analysis/(?P<path>.*)$', serve, {
            'document_root': settings.MEDIA_ROOT,
        }),
    ]
来自django.conf导入设置的

从django.views.static导入服务
#在文件末尾
如果设置为.DEBUG:
URL模式+=[
url(r'^/local/path/to/analysis/(?P.*)$),serve{
“document\u root”:settings.MEDIA\u root,
}),
]
到你的应用程序url.py

static_media_path -= '/local/path/to/analysis/'
from django.conf import settings
from django.views.static import serve

#at the end of file
if settings.DEBUG:
    urlpatterns += [
        url(r'^/local/path/to/analysis/(?P<path>.*)$', serve, {
            'document_root': settings.MEDIA_ROOT,
        }),
    ]