更新 2:问题根本不是 Django 问题 - Python 在到达 Django 之前肯定会删除字符。解决方法是将字符串定义为原始的
inputs['variable'] = r'{\bf this is code} \\'
更新:事实证明,这是一个比我乍一看更深的问题 - 问题是 python 在字符串文字到达 django 之前正在替换它们。如果我找到解决方案,我会做更多的调查和更新。
我正在使用 django 使用 LaTeX 模板来生成报告,并且在 Django 替换部分字符串的方式上遇到了很多问题。
具体来说,我遇到了两个问题,我尝试插入一个包含乳胶代码的变量。
第一个是它会用它们的 HTML 代码替换 HTML 字符,例如小于符号,这对于 LaTeX 解释器来说当然是胡言乱语。我通过将上下文设置为从不自动转义来解决此问题,如下所示:
c = Context(inputs)
c.autoescape = False
但是,我还有第二个问题,即 Django 将字符串文字替换为相应的字符,因此双反斜杠变为 \,而 \b 变为退格。我怎样才能强制 Django 将这些字符留在原处,所以
inputs['variable'] = '{\bf this is code} \\'
当我使用时不会被破坏
{{variable}}
在 django 模板中引用它?