1

我在我的 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.

4

1 回答 1

0

我在这里找到了提示

[my project]\src\MyBundle\Resources\views\input_inline_template.html.twig中,我已将:替换{% use 'CKEditorBundle:Form:ckeditor_widget.html.twig' %}为:{% use 'IvoryCKEditorBundle:Form:ckeditor_widget.html.twig' %}

它修复了它。

于 2017-04-15T17:21:59.820 回答