gpt4 book ai didi

python - Pyramid 、变色龙和模板渲染

转载 作者:太空狗 更新时间:2023-10-30 02:34:33 25 4
gpt4 key购买 nike

我用 Python 网络框架“Pyramid ”开始了一个项目,使用模板引擎“变色龙”。

我是这个框架的初学者,但我必须为客户使用它。

我按照步骤安装框架,然后开始编码,仅用于培训目的!

我的第一个应用程序是一个愚蠢、简单的 CRUD 应用程序。

我正在做的是:

在我的 __init__.py 中,对于每个 View ,我都有以下代码:

config.add_view('myenglishdictionary.views.modify',route_name='modify_route',renderer='templates/base.pt')

base.pt 是带有页眉和页脚的主模板以及带有以下代码的 div:

<div>${body}</div>

在我的文件 view.py 中,每个 View 都有两行,如下所示:

body = render('templates/list.pt',{'list':list ,'project':'myProject'}, request=request)
return {'body':body}

在我的 list.pt 中有将嵌入 base.pt 的内容

一切似乎都很好。但是在更新库之后,现在我无法正确看到我的模板。

代替实际的 html 代码的是 html 实体:

 &lt;div class="clear"&gt;&lt;/div&gt;

所以,显然页面看起来不太好。

问题似乎出在 render 方法上,因为 base.pt 模板的 html 显示正确。

最佳答案

默认情况下,使用 ${} 语法对包含的文本进行转义(以帮助抵御 XSS 注入(inject)攻击)。

相反,使用 structure: 前缀告诉渲染引擎不要转义您的文本:

<div>${structure: body}</div>

关于python - Pyramid 、变色龙和模板渲染,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7769062/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com