Sonata News Bundle - 添加 CKEditor

Posted

技术标签:

【中文标题】Sonata News Bundle - 添加 CKEditor【英文标题】:Sonata News Bundle - Add CKEditor 【发布时间】:2018-01-12 03:29:50 【问题描述】:

我是 Symfony 的初学者,我正在尝试为 Sonata News Bundle 设置 CKEditor。

我到处寻找(甚至在德语论坛上,而我不会说德语!)但我在任何地方都找不到任何答案。

有人对我的问题有线索或解决方案吗?

谢谢大家。

路易

【问题讨论】:

【参考方案1】:

我建议你使用IvoryCKEditorBundle

下载捆绑包:

composer require egeloen/ckeditor-bundle

注册Bundle,然后更新你的app/AppKernel.php

class AppKernel extends Kernel

    public function registerBundles()
    
        $bundles = array(
            new Ivory\CKEditorBundle\IvoryCKEditorBundle(),
            // ...
        );

        // ...
    

如果您使用的是 Symfony

php app/console ckeditor:install
php app/console assets:install web

如果您使用 Symfony >= 3.0:

php bin/console ckeditor:install
php bin/console assets:install web

然后usage

【讨论】:

【参考方案2】:

我这样做的方式(symfony:4.3.5,奏鸣曲:3.54.1)。

下载 ckeditor JS 库并将其放在 public/js 中,即您应该拥有该文件:

your_app/public/js/ckeditor/ckeditor.js

在该文件目录旁边:adapterslangpluginsskins 以及一些 js/css/md 文件。

然后覆盖基本奏鸣曲编辑模板:

% extends '@SonataAdmin/CRUD/base_edit.html.twig' %

% block javascripts %
    <script src=" asset('js/ckeditor/ckeditor.js') " type="text/javascript"></script>
     parent() 
% endblock %

此代码将在您的页面中包含 ckeditor,并应放置在:your_app/templates/edit.html.twig

然后,添加到“模板”部分edit:edit.html.twig,以便使用您创建的模板:

sonata_admin:
    title: 'Your app Admin'
    dashboard:
        blocks:
            -  type: sonata.admin.block.admin_list, position: left 
    templates:
        edit: edit.html.twig

这是文件:your_app/config/packages/sonata_admin.yaml

然后,当您从奏鸣曲管理包中添加新字段时,在 configureFormFields 中您的 ckeditor 字段应如下所示:

->add('field_name', null, array('attr'=> array('class' => 'ckeditor')))

重要的部分是添加具有类属性的属性数组。 清除缓存,CKEditor 现在应该可以工作了。

【讨论】:

以上是关于Sonata News Bundle - 添加 CKEditor的主要内容,如果未能解决你的问题,请参考以下文章

集成 Sonata Media Bundle(媒体实体)和 Sonata Classiffication Bundle(标签实体)

是否可以在 Sonata Admin Bundle 中添加可翻译的关联?

Symfony Sonata Media Bundle 向用户添加图像/视频

在sonata admin Bundle的List视图中添加新Button

Sonata Admin Bundle:如何将表单中的“删除”按钮添加到嵌套实体列表中的实体?

Sonata admin-bundle - 没有注销导航栏