将 docx 文件渲染为 django 模板:断词 {{}} 块

发布于 2024-12-18 08:55:42 字数 458 浏览 1 评论 0原文

我正在编写一个 Django 应用程序,它根据用户输入呈现 docx 文档。主要思想是:“docx是django模板”。因此,我需要解压缩 word 文件,使用标记提取 XML,将其呈现为 django 模板,然后将所有内容放回原处。

一切工作正常,除了创建初始文档时出现烦人的问题(我使用标准编辑器,例如 MS Word 本身和 LibreOffice Writer):在设置 Markdown 时,编辑器可以破坏模板块({{}}{%%}) 和 XML 标签。

例如: {{doc_title}} 可以变成

<w:t>{{</w:t><w:t>doc_title</w:t>}}

除了直接在 XML 中插入模板块之外,有什么方法可以避免这种情况吗?

I'm writing an django application which renders docx document based on user input. The main idea is: "docx is django template". So, I need to unzip word file, extract XML with markup, render it as django template and put everything back.

Everything works just fine, except annoying problem with creating initial document (I use standard editors such as MS Word itself and LibreOffice Writer): while setting up markdown, editor can break template blocks ({{}} and {%%}) with XML tags.

For example: <w:t>{{doc_title}}</w:t> can become

<w:t>{{</w:t><w:t>doc_title</w:t>}}

Is that any way I could avoid this, except inserting template blocks directly in XML?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文