我在我的 SYMFONY 3.2 项目中实现了 IvoryCKEditorBundle。
我遵循了此处的指南,并在 Symfony 官方网站上对文档进行了概述。
现在我看到 IvoryCKEditorBundle 目录中存在以下文件:
- [我的项目]\vendor\egoloen\ckeditor-bundle\Resources\views\Form\ckeditor_widget.html.twig
- [我的项目]\vendor\egoloen\ckeditor-bundle\Twig\CKEditorExtension.php
并[my
project]\vendor\egoloen\ckeditor-bundle\Resources\views\Form\ckeditor_widget.html.twig
定义{% block ckeditor_widget %}
.
在我的项目中,我使用官方文档中给出的所有技巧重新定义了自己的模板来呈现表单。在[my project]\src\MyBundle\Resources\views
我有一个input_inline_template.html.twig
看起来像这样的文件:
{% extends 'form_div_layout.html.twig' %}
{% use 'CKEditorBundle:Form:ckeditor_widget.html.twig' %}
{% block form_row %}
<div class='col-12' id={{ id ~ '_div_row_id'}}>
{% block form_label %}
<div class='col-4' id={{ id ~ '_div_label_id' }}>
{{ parent() }}
</div>
{% endblock %}
{% if form.vars.block_prefixes.2 == "textarea" %}
{% if (form.vars.block_prefixes.3 is defined) and (form.vars.block_prefixes.3 == "ckeditor") %}
{% block ckeditor_widget %}
<div class='col-8'>
{{ parent() }}
</div>
{% endblock %}
{% else %}
{% block textarea_widget %}
<div class='col-8'>
{{ parent() }}
</div>
{% endblock %}
{% endif %}
{% endif %}
</div>
{% endblock %}
这不起作用。它告诉我它找不到ckeditor_widget
如果我没有{% use 'CKEditorBundle:Form:ckeditor_widget.html.twig' %}
抛出错误的行:
“form_div_layout.html.twig”中不存在模板“form_div_layout.html.twig”上的块“ckeditor_widget”。
当该行{% use 'CKEditorBundle:Form:ckeditor_widget.html.twig' %}
被实现时,它会抛出一个错误,即:
找不到模板“CKEditorBundle:Form:ckeditor_widget.html.twig”
CKEditorBundle:Form:ckeditor_widget.html.twig
它告诉我它在:
[my_symf_project]\app/Resources/views
, [my_symf_project]\vendor\symfony\symfony\src\Symfony\Bridge\Twig/Resources/views/Form
,中寻找[my_symf_project]\vendor\knplabs\knp-menu\src\Knp\Menu/Resources/views
。
我不知道如何配置[my project]\app\config\config.yml
它应该[my project]\vendor\egoloen\ckeditor-bundle\Resources\views\Form\
查找ckeditor_widget.html.twig
.