为使用Django-CKEditor上传的图像设置默认样式表类

时间:2019-11-14 18:45:16

标签: django ckeditor

我正在使用CK-Editor和Django(通过django-ckeditor)创建富文本字段并上传图像。但是,有些图像非常大,我通常会使用引导程序使它们通过image-fluid类作出响应。

对于在Django中使用CKEditor上传的图像,我可以通过进入Image Properties > Advanced > Stylesheet Classes并将其设置为image-fluid来手动设置此类。有什么办法可以将此类设置为默认类吗?

目前,我在我的settings.py中尝试了以下方法,但是没有运气:

CKEDITOR_CONFIGS = {
    'default': {
        'stylesSet': [
            {
                'name': 'Image-Fluid',
                'element': 'img',
                'attributes': {'class': 'img-fluid'},
            },
        ],
    },
}

是否可以为使用CKEditor上传的图像设置默认类别?谢谢。

1 个答案:

答案 0 :(得分:0)

您可以在static/ckeditor/config.js中添加以下代码。然后python manage.py collectstatic

CKEDITOR.on('instanceReady', function (ev) {
   ev.editor.dataProcessor.htmlFilter.addRules(
    {
       elements:
        {
          $: function (element) {
            // check for the tag name
            if (element.name == 'img') {

                element.attributes.class = "img-fluid" // Put your class name here
            }

            // return element with class attribute
            return element;
         }
       }
   });
 });

添加图像后在编辑器中保存更改后,类名将反映出来。