如何将插件安装到 CkEditor、Django

Posted

技术标签:

【中文标题】如何将插件安装到 CkEditor、Django【英文标题】:How can I install plugin into CkEditor, Django 【发布时间】:2016-04-05 03:08:26 【问题描述】:

我正在使用django-ckeditor。现在我需要添加一个新插件。 This 我已经阅读了,我应该下载并将其解压缩到“插件”文件夹中:

将文件内容解压到“plugins”文件夹中 CKEditor。

但我的项目中没有任何“插件”文件夹。有一个,但它位于Lib\site-packages\ckeditor\static\ckeditor\ckeditor\plugin

所以,如果我在那里添加它 - 当我将它部署到生产或另一台计算机上时它将不可用......

我该怎么办?

【问题讨论】:

【参考方案1】:

感谢您的提问。我只是将html5audio 插件添加到djnago-ckeditor 中。完整路径是:

    从official repo下载插件。 将html5audio 目录解压缩到/path/to/your/project/static/ckeditor/ckeditor/plugins//python/libs/ckeditor/static/ckeditor/ckeditor/plugins/ 及其所有内容。 将 html5audio 插件添加到您的 settings.py 附近的其他 CKEDITOR 变量中:
CKEDITOR_CONFIGS = 
    'default': 
        'toolbar': 'full',
        'extraPlugins': ','.join(
            [
               'html5audio',
            ]
        ),
    ,

4。使用 ckeditor 小部件重新加载页面:)。

【讨论】:

谢谢。我会在需要的时候使用它, @Q-bart 如果我能提供帮助,我很高兴。几天前坐下来大约 1.5 小时,并尝试让它发挥作用。最后,我认为添加插件的完整收据对其他人有用:)。【参考方案2】:

来自this thread

静态文件进入静态文件目录。如果您将插件放入 ckeditor/ckeditor/plugins 子文件夹中,它将起作用。 Collectstatic 将合并所有文件和文件夹,您将获得典型的 ckeditor 设置

因此,将插件代码放在项目的static 文件夹中,在static/ckeditor/ckeditor/plugins 中,它应该可以工作。

【讨论】:

所以,我已将包 video 放入 myproject\static\ckeditor\ckeditor\plugins` then run collectstatic` 并且 Django 已将所有 CKEditor 配置复制到包 creditor 中,靠近它的是包 static,其中存在我的video插件 而且,当我将 'extraPlugins': ['video',] 添加到 CKEDITOR_CONFIGS 时,没有任何更改,并且我的编辑器现在不可用 你在 settings.py 中定义了 STATIC_ROOT 吗? 是的,STATIC_ROOT = 'staticfiles' 好像设置不正确。问题是 - 在开发服务器上,您不需要运行 collectstatic,然后将使用来自您的应用程序的静态文件。因此,要查看 ckeditor 是否有效(使用插件),请从您的应用程序 static 文件夹(而不是 STATIC_ROOT 文件夹)提供它。为此,请删除collectstatic 生成的文件和文件夹。

以上是关于如何将插件安装到 CkEditor、Django的主要内容,如果未能解决你的问题,请参考以下文章

CKEditor配置 - 如何在使用Builder自动构建之后手动安装另外一个插件

ckeditor JS插件 在火狐下直接复制图片 就可以粘贴到文本框里 如何取消这个复制粘贴功能 ?在线等

如何将“target”属性添加到ckeditor5中的`a`标签?

CKEditor 和 C# Web API,使用简单的上传插件上传图片

ckeditor编辑器如何做复制图片上传(包括本地图片及远程图片),以插件方式实现

CKEditor,'enhancedcolorbuttton'插件导致负载问题