EFS `<br>` 标签渲染修复:从文本到换行的完整解决方案
问题背景
在开发 EFS(Elastic File System)管理系统的过程中,我们遇到了一个看似简单但影响用户体验的问题:在 Admin 后台的安全分析显示中,所有应该换行显示的内容都被压缩在一行,并且出现了奇怪的 <br> 文本字符。
问题现象
用户期望看到的是清晰分行的安全分析信息:
✅ 使用KMS密钥加密,安全性高
📍 配置了4个挂载目标
🏷️ 已配置标签,便于管理
但实际上显示的是:
✅ 使用KMS密钥加密,安全性高<br>📍 配置了4个挂载目标<br>🏷️ 已配置标签,便于管理
这种显示不仅不美观,还严重影响了信息的可读性。
问题根因分析
技术背景:Django 的自动转义机制
Django 作为一个安全的 Web 框架,默认会对所有模板变量进行 HTML 转义,这是为了防止 XSS(跨站脚本)攻击。这意味着 <、>、& 等字符会被转换为 <、>、& 等 HTML 实体。
问题代码分析
让我们深入分析出现问题的原始代码
