Django Markdownx预览仅在重新加载pag后显示

2024-05-23 20:08:25 发布

您现在位置:Python中文网/ 问答频道 /正文

我想要django-markdownx来展示数学公式和方程,并因此将python-markdown-math与之集成。除了我需要重新加载页面以预览键入的数学公式或符号外,一切正常。在

只有当我输入数学公式而不是其他文本或上传图像时才会出现问题。与数学相关的内容(如$$…$$)似乎在预览中被跳过,并且只有在我重新加载/刷新页面时才会显示。在

我的部分代码:

# settings.py 

STATIC_URL = '/static/'
STATIC_ROOT = os.path.join(BASE_DIR, "static/")

MEDIA_URL = '/media/'
MEDIA_ROOT = os.path.join(BASE_DIR, 'media')

FORM_RENDERER = 'django.forms.renderers.TemplatesSetting'

MARKDOWNX_MARKDOWN_EXTENSIONS = [
    'mdx_math',
]


MARKDOWNX_UPLOAD_MAX_SIZE = 5 * 1024 * 1024  # 5 MB


MARKDOWNX_SERVER_CALL_LATENCY = 1000


MARKDOWNX_IMAGE_MAX_SIZE = {
    'size': (500, 500),
    'quality': 90,
    'crop': True,
}

MARKDOWNX_MEDIA_PATH = 'markdownx/'


# models.py

class MyModel(models.Model):
    content = MarkdownxField()

    @property
    def get_content(self):
        return mark_safe(markdownify(self.content))


# in my template 
<head>
<title>MathJax TeX Test Page</title>

<script type="text/x-mathjax-config">
  MathJax.Hub.Config({
    tex2jax: {inlineMath: [["$","$"],["\\(","\\)"]]}
  });
</script>
<script type="text/javascript"
   src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML">
</script>
</head>
<body>

<form method="POST" action="">
    {% csrf_token %}
    {{ form }}
    <input type="submit" name="" value="submit">
</form>

{{ form.media }}

</body>
</html>

请帮我找出导致这种行为的问题。在

注意:重新加载并获得正确的输出仅在Firefox中有效。Chrome只是重置textarea。在


Tags: djangopyformtypescriptmath页面content