【问题标题】:Django 0.96 to Django 1.2 on GAEGAE 上的 Django 0.96 到 Django 1.2
【发布时间】:2012-09-03 03:58:56
【问题描述】:

在configuration.py中:

FOOTER_HTML = ( 'Powered by <a href="http://code.google.com/appengine">GAE </a> ' )

在 base.html 中:

<div id="footer">
   {% block footer %}
   {{ configuration.FOOTER_HTML }}
   {% endblock %}
</div>

这在 Django 0.96 / Python 2.5.2 中按预期呈现,但在 Django 1.2 / Python 2.7.2

如何解决这个问题?

【问题讨论】:

  • FOOTER_HTML 应呈现为 html 页面的一部分。在 Django 1.2/ Python 2.7.2 环境中,FOOTER_HTML 值呈现为文本。
  • 所以,0.96 会逐字插入值,但 1.2 会转义特殊的 HTML 字符,因此您会看到 HTML 源代码的样子吗?
  • 是的,马特。 HTML 标签在新环境中被转义。
  • 试试 {{ configuration.FOOTER_HTML|safe }}
  • 谢谢,马特和龙。这有效

标签: google-app-engine django-forms python-2.7


【解决方案1】:

阅读 django 模板文档。

https://docs.djangoproject.com/en/dev/topics/templates/

要快速解决此问题,请使用

{{ configuration.FOOTER_HTML|safe }}

但是,还有其他方法可以做到这一点,如模板文档中所述。

供将来参考,如果您可能应该解释什么不起作用。与其简单地说某事“未按预期呈现”,不如展示您的期望和得到的结果。您还应该说明您尝试过哪些无效的修复方法。

否则,您会期望人们读懂您的想法。

【讨论】:

    猜你喜欢
    • 2011-01-24
    • 2011-08-16
    • 1970-01-01
    • 1970-01-01
    • 2010-11-19
    • 2011-07-08
    • 2011-02-28
    • 2016-02-04
    • 1970-01-01
    相关资源
    最近更新 更多