如何安全地在Django模板中的div中呈现html

时间:2017-03-17 10:19:44

标签: html django django-templates

我的视图是返回一个Model对象,该对象有一个值为HTML代码的字段。

<div> Description <span> number </span>

我的一些html值没有正确关闭像

这样的标签
interface IUser {
    userID: string,
    text: string,
    EmailId: string
}

interface ICreateSessionStates {
    selectedUsers: Array<IUser>,
    sessionDetails: ISessionDetails,
    entityDetails: IEntityDetails,
    domains: Array<IDomain>,
    users: Array<{
        Name: string
    }>
}

usersUpdated(users : Array<IUser>) {
    this.setState({
        selectedUsers: users
    } as ICreateSessionStates)
}

如果我在模板中呈现该值,例如{{ob.html |安全}},它破坏了父元素结构,我的页面在设计时没有对齐。

如何在不破坏父母结构的情况下安全地放置HTML代码。

1 个答案:

答案 0 :(得分:0)

一种选择是使用bleach来清理内容:

  

因为它依赖于html5lib,所以Bleach和现代浏览器一样出色   处理奇怪的,古怪的HTML片段。以及任何Bleach的方法   将修复不平衡或错误嵌套的标签。

您可以通过django-bleach使用它,它随时可以使用filter for your templates