我是Symfony的初学者,我正在尝试为Sonata新闻套装设置CKEditor。
我到处寻找(即使在德国论坛上,我也不会说德语!)但我无法在任何地方找到任何答案。
有人对我的问题有线索或解决方案吗?
谢谢大家。
路易斯
答案 0 :(得分:2)
我建议您使用IvoryCKEditorBundle
下载Bundle:
composer require egeloen/ckeditor-bundle
注册Bundle,然后,更新你的app / AppKernel.php
class AppKernel extends Kernel
{
public function registerBundles()
{
$bundles = array(
new Ivory\CKEditorBundle\IvoryCKEditorBundle(),
// ...
);
// ...
}
}
如果您使用的是Symfony< = 2.8:
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
答案 1 :(得分:0)
我的操作方式(符号:4.3.5,奏鸣曲:3.54.1)。
下载ckeditor JS库并将其放在public/js
内,即,您应该拥有以下文件:
your_app/public/js/ckeditor/ckeditor.js
以及该文件目录旁边:adapters
,lang
,plugins
和skins
以及一些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
然后,当您从Sonata管理员捆绑包中添加新字段时,在configureFormFields内部,您的ckeditor字段应如下所示:
->add('field_name', null, array('attr'=> array('class' => 'ckeditor')))
重要的部分是添加具有类属性的属性数组。 清除缓存,CKEditor应该可以正常工作了。