javascript - CKEditor 与 Symfony 的集成不起作用
问题描述
我目前正在用 Symfony 为一个项目建立一个网站,因为上面会有文章,所见即所得的编辑器似乎是最好的选择。我首先尝试了一些编辑器,然后意识到 CKEditor 可以在 Symfony 中使用。我安装了它,它工作了一段时间,但在仍然隐藏文本区域的同时停止显示(下面的截图)。
我试图解决它但失败了,所以我暂时忽略了这个问题,处理了其他事情,最后遇到了 Easy admin bundle,它解决了我的很多问题。最后我用 Easy Admin 尝试了 CKEditor,但仍然没有,如果有帮助的话,这段代码会嵌入到页面中。
我查看了很多 git 问题,但没有人遇到同样的问题,您知道如何解决吗?
easy_admin.yaml
easy_admin:
design:
form_theme: # Both themes are needed for ckeditor integration
- "@EasyAdmin/form/bootstrap_4.html.twig"
- "@FOSCKEditor/Form/ckeditor_widget.html.twig"
Article:
class: App\Entity\Article
form:
fields:
- title
- { property: 'pictureFile', type: 'vich_image' }
- { property: 'content', type: 'fos_ckeditor'}
如果需要我这边的任何其他信息,请不要犹豫
解决方案
在 crudController 中添加以下代码,您想在 Easy admin 中显示 ckeditor
public function configureCrud(Crud $crud): Crud
{
return $crud->addFormTheme('@FOSCKEditor/Form/ckeditor_widget.html.twig');
}
然后在下面的行中使用它应该与 Easyamin3 和 Symfony5 一起正常工作的字段,我自己测试过,效果很好
TextareaField::new('content')->setFormType(CKEditorType::class),
推荐阅读
- python - 如何在 SQL LIKE 中传递动态值?
- parsing - 如何在我的词法分析器/解析器中支持不同的语言版本
- java - 如何通过 Intent 初始化 Android DatePicker?
- git - 变基后丢失的更改,如何安全地将更改从本地主机推送到远程/源主机
- node.js - 如何将node应用程序打包成windows exe应用程序
- node.js - 当我有 3 个 package.json 时,npm 只安装两个 package.json
- vaadin - Vaadin:如何更新图表的数据?
- mysql - 如何将数据插入从单个表单接收的多个数据库表中?Django/MySql
- node.js - mongoose:对 $project 中的字段进行排序和分页
- javascript - 使用jQuery更改输入数字字段时防止提交表单