如何解决Flask-CKEditor - 错误代码:editor-element-conflict
在我的 Flask 应用程序中,我在 2 个不同的文件上有 2 个 CKEditor 实例。
<div>
{{ ckeditor.create(name="message_body") }}
{{ ckeditor.load(pkg_type="standard") }}
{{ ckeditor.config(name="message_body",width=1000,height=500) }}
</div>
和
<div>
{{ ckeditor.create(name="newsletter_body") }}
{{ ckeditor.load(pkg_type="standard") }}
{{ ckeditor.config(name="newsletter_body",height=500) }}
</div>
每一个 <div>
都在一个 {% block main %}
我正在使用这些行从 2 个不同的文件中获取数据:
request.form.get("message_body")
和
request.form.get("newsletter_body")
一切看起来都很好,我得到了数据,但在我的浏览器中却出现了这个错误:
[CKEDITOR] Error code: editor-element-conflict.
Object { editorName: "message_body" }
相关文档如下:
Description: There is already an editor’s instance attached to the provided element and attaching another one to it is not allowed.
Additional data:
editorName: The name of the already attached editor.
但我不明白为什么。任何人都可以帮助我摆脱这些错误吗? 非常感谢
解决方法
我刚刚发布了 0.4.5 来解决这个问题,请升级:
pip install -U flask-ckeditor
这个错误背后的原因是:
当你向 textarea 元素添加“ckeditor”类时,CKEditor 会尝试在它上面初始化一个 CKEditor 编辑器框。同时,如果您手动使用 CKEDITOR.replace(...)
初始化一个 CKEditor 编辑器框(这是 ckeditor.config()
所做的),则会发生错误:您无法在一个 textarea 元素上初始化两个 CKEditor 编辑器框。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。