0

我正在使用 web2py 应用程序,因为我有一个要求,例如,在我的第一页中,我必须创建一个 web2py DIV() 标记,显示它并将该值存储在数据库中。在第二页中,我必须获取此数据库值并将其添加到 TABLE() 函数中。

它不是抛出错误。但在第二个页面视图中,划分内容显示为 XML,而不是显示为 HTML。

所以在我的 HTML 表格中,我得到的值为<div style="float:right">content</div>

我认为 DIV() 作为 xml() 存储在数据库中。如何将此 xml() 转换回 DIV()。

4

2 回答 2

2

数据库正在存储原始 HTML。但是,写入 web2py 视图的任何文本都会自动转义,因此 HTML 代码按字面显示而不是呈现为 HTML。为了避免这种情况,正如您所指出的,您可以简单地将 HTML 包装在XML()帮助程序中。

不过要小心——您不应该对用户输入的输入执行此操作。恶意用户可以输入 Javascript 代码,这可能会为查看该内容的其他用户创建一个安全漏洞(这就是 web2py 首先自动转义所有内容的原因)。为了更安全,你也可以这样做XML(..., sanitize=True)

于 2012-08-07T21:00:31.943 回答
0

我找到了解决方案。必须使用 XML()。示例:XML(database_field)

于 2012-08-07T11:51:00.777 回答