Django - 加载动态模板

时间:2017-02-25 09:29:40

标签: python django django-templates

我想知道有关Django中加载文件的信息。首先,加载静态文件非常清楚。所以在我的情况下,我们有简单的网站,其中一个脚本生成动态内容。这个动态内容,它是:

  • 文件夹列表
  • 使用一个HTML文件
  • 和JPG图片。

这里的主要任务是加载带有图片的HTML文件。

生成的内容可能会根据我的需要进行更改。在我的示例中,我可以将该内容放入templates文件夹,并像下面的代码段一样加载。但是所有图像都丢失了。所以我需要将HTML文件放到项目中的templates文件夹中,并将图像放到分离的static文件夹中,以加载它们。

问题在这里,我想在一些单独且分离的路径中找到Generated Source,但是仍然可以使用图像加载HTML。

## Ex. including HTML page (which should located in templates)
    <div class="container">

        {% include "stories/Princess_Run_Story/Princess_Run_Story.html" %}

    </div>


## Ex. loading IMG file(which should located in static)
     <img class="first-slide" 
              src= "{% static '/workbook/images/galaxy_droid_1.jpg' %}" >

1 个答案:

答案 0 :(得分:0)

是的,它会起作用,只需要在调用此片段时从View发送动态图像日期。仅在正确的路径中加入以下细节。

{%include&#34; stories / Princess_Run_Story / Princess_Run_Story.html&#34; %}

替代选项: 实际上只需点击按钮调用Ajax并通过后端在片段中准备图像日期并发送Ajip成功的片段 如下javascript中的代码:

there $('.container').html(snippet_data)

在后端:

render_data = {'image_data': image_data}
t = loader.get_template('stories/Princess_Run_Story/Princess_Run_Story.html')
html = t.render(RequestContext(request, render_data))
return HttpResponse(json.dumps({'html': html}), 'application/json')