我正在嘗試使用Django建立博客。我直接將HTML存儲到模型中。我在HTML文件中使用了{% autoescape off %}
和{% endautoescape %}
標記,這些標記告訴Python不要自動將HTML代碼字符串化。在商標之間,我用{{ article.content }}
這樣的代碼來加載存儲在模型中的HTML代碼。django「autoescape off」標記之間的Python代碼無法執行
問題是,<img src="{% static 'img/dot.png' %}">
(存儲在模型中的HTML代碼)將顯示爲{%%20static%20'img/dot.png'%20%}
。 python代碼不會被執行。
我感到無奈。有沒有人有一個好主意?
這裏是一個模板的例子:
{% extends "base.html" %}
{% block content %}
{% load static %}
<div style='margin:0 auto;width:0px;height:0px;overflow:hidden;'>
<img src="{% static 'img/wechat.png' %}">
</div>
<header>
<div id="logo">
<span class="heading_desktop">You are browsing </span><a href="/index" class="logotype">Paradox</a><span class="heading_tablet"> , a personal site</span><span> of </span><a href="/me">Jiawei Lu</a><span class="heading_tablet"> since 2015</span><span class="phone_h">. Happy<script>document.write(" " + whatDay());</script>.</span>
</div>
<nav>
<ul>
<li><a href="/index" class="selected">Articles</a></li>
<li><a href="/portfolio">Portfolio</a></li>
<li><a href="/me">Jiawei Lu</a></li>
</ul>
</nav>
<hr class="red">
</header>
<div id="breadcrumb" class="article">
<a href="/index">Articles</a> → {{ article.title }}
</div>
<div id="wrapper">
<article>
<h1 class="article">{{ article.title }}</h1>
<div id="post_info">
<p>Published on {{ article.timestamp }}<!--<span> | </span>--></p>
<!-- Category inside article <p><a href="#">Category 1</a><a href="#">Category 2</a><span> | </span></p> -->
<!-- Share inside article <p>Share: Email/Linkedin</p> -->
</div>
<div id="post_content" class="article">
{% autoescape off %}
{{ article.content }}
{% endautoescape %}
</div>
</article>
</div>
</div>
{% endblock %}
article.content:HTML代碼,就像
<h1>Test</h1>
<img src="{% static 'img/dot.png' %}">
目前還不清楚「模型中存儲的HTML代碼」的含義。您是否試圖從模型字段呈現模板代碼?請顯示您的實際模板。 –
添加了模板。希望現在很清楚。 –