0

我未能在 django-ckeditor 中加载 mathjax

这篇文章包含我的 virtualenv 配置、CKEDITOR_CONFIGS、printscreen 和 Source 页面中的一个元素。

虚拟环境

>pip freeze
Django==1.10.2
django-appconf==1.0.2
django-ckeditor==5.1.1
django-compressor==2.1
django-debug-toolbar==1.6
Pillow==3.4.2
psycopg2==2.6.2
rcssmin==1.0.6
rjsmin==1.0.12
sqlparse==0.2.1

CKEDITOR_CONFIGS

CKEDITOR_CONFIGS = {
    'default': {
        'skin': 'moono',
        # 'skin': 'office2013',
        'toolbar_Custom': [
            {'name': 'document', 'items': [
                'Subscript', 'Superscript', ]},
            {'name': 'source', 'items': [
                'Source', ]},
        ],
        'toolbar': 'Custom',
        'mathJaxLib': '//cdn.mathjax.org/mathjax/2.2-latest/MathJax.js?config=TeX-AMS_HTML',
        'height': 200,
        'width': 600,
        'extraPlugins': ','.join(['mathjax', ]),
    },
}

根据mathjax #256 的问题,我更改了 ckeditor-init.js。我还尝试了各种组合,包括'toolbar_Custom' 列表中的{'name': 'math', 'items': ['mathjax', ]},和。{'name': 'math', 'items': ['Matjax', ]}

印刷丝网

来源 如您所见,面板包含我在 config 中设置的所有配置,但 mathjax 除外。但是,页面源包含“toolbar_Basic”、“toolbar_Full”和“toolbar_Custom”。根据我的配置,我不确定是否应该存在 Basic 和 Full。

< div class = "django-ckeditor-widget"
data - field - id = "id_false_answer_text"
style = "display: inline-block;" >
  < textarea cols = "40"
id = "id_false_answer_text"
name = "false_answer_text"
rows = "10"
required data - processed = "0"
data - config = '{"toolbar_Basic": [["Source", "-", "Bold", "Italic"]], "toolbar_Full": [["Styles", "Format", "Bold", "Italic", "Underline", "Strike", "SpellChecker", "Undo", "Redo"], ["Link", "Unlink", "Anchor"], ["Image", "Flash", "Table", "HorizontalRule"], ["TextColor", "BGColor"], ["Smiley", "SpecialChar"], ["Source"]], "filebrowserUploadUrl": "/ckeditor/upload/", "skin": "moono", "filebrowserWindowWidth": 940, "filebrowserWindowHeight": 725, "width": 600, "height": 200, "filebrowserBrowseUrl": "/ckeditor/browse/", "language": "en-us", "toolbar": "Custom", "toolbar_Custom": [{"items": ["Subscript", "Superscript"], "name": "document"}, {"items": ["Source"], "name": "source"}, {"items": ["mathjax"], "name": "mathjax"}]}'
data - external - plugin - resources = '[]'
data - id = "id_false_answer_text"
data - type = "ckeditortype" > & lt;
p & gt;
fa4 q1 & lt;
/p&gt;</textarea >
</div>

另一个配置 All-plugin 配置(根据网络上的帖子)也没有显示 mathjax 图标。无论是否更改 'ckeditor-init.js

CKEDITOR_CONFIGS = {
    'default': {
        'toolbar': 'none',
        'height': 200,
        'width': 600,
     },
}

截图022

因此,作为 README.rst 中的示例配置

静态文件 CKEDITOR_JQUERY_URL = '//ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js' 截图023

问题是:

如果这是一个问题,我该如何快速修复它?如果它与配置经验不足有关,您能否指导我查看配置示例/正确的 mathjax 配置?

打印屏幕来自 Django 管理员,我在这些模型中使用 RichTextUploadingField。

4

1 回答 1

4

这是一个错误配置问题,Django-CKEditor 没有问题。mathjax 配置的关键部分如下。

CKEDITOR_CONFIGS = {
    'default': {
        'skin': 'moono',
        'toolbar_Custom': [
            {'name': 'math', 'items': ['Mathjax', ]},
        ],
        'toolbar': 'Custom',
        'mathJaxLib': '//cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS_HTML',
        'extraPlugins': ','.join(['mathjax',]),
    },
}

工具栏extraPligins都应该出现在配置中,以便 mathjax 出现和工作。

于 2016-11-06T17:53:55.373 回答