django - 动态内容的 Django 模板和数学表达式
问题描述
如何设置从视图传递到模板的动态内容以使用 mathjax 或 Latex。更准确地说,如果 2*sqrt(2) 将通过 pprint 函数显示为 2√2,则在终端中更准确。但是在 django 模板中,它输出为 2*sqrt(2) 而不是 2√2?
解决方案
终于想通了,以防其他人遇到同样的问题,这是可行的解决方案。我在包含ASCIIMathML的 mathjax 中使用 AsciiMath Input 作为输入格式。
在 base.html 中添加以下脚本:
<script>
MathJax = {
loader: {load: ['input/asciimath', 'output/chtml']}
}
</script>
<script src="https://polyfill.io/v3/polyfill.min.js?features=es6"></script>
<script type="text/javascript" id="MathJax-script" async src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/startup.js"></script>
<script type="text/javascript" id="MathJax-script" async src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-chtml.js">
并记住用反引号括起来动态文本”,即`...`所以在django-admin中你可以简单地输入sqrt(50)为`sqrt(50)`或`x^2`和动态从视图传递到模板的内容,在模板中用反引号括起来 {{e1}}
` {{ e1 }} `
而不是 {{ e1 }} 其中 e1 是动态内容。因此,如果之前以纯文本形式显示为 2*sqrt(2) 的 e1 现在将显示为 2√2。更多详情:http ://docs.mathjax.org/en/latest/input/asciimath.html#asciimath-support
推荐阅读
- django - 模型不渲染
- android - 带有协程的 liveData 仅第一次触发
- asp.net - Signal Hub 代理回调接收推送的对象为 Null
- sql - SQL中的棘手分区
- wordpress - AWS Beanstalk 错误“InvalidParameterValueError:找不到名为 'ap...7' 的应用程序版本。” Bitbucket 管道
- javascript - 如何根据其内容选择数组?
- swift - 在调用函数时在 Swift 中读取 FireDatabase
- c++ - 如何将 C++ 中的库和头文件与 MinGW 一起使用?
- javascript - 如何在 data.forEach 函数中使用临时变量而不是绝对列值
- linux - AWS 会话管理器欢迎消息