繁体   English   中英

IvoryCKEditorBundle Symfony:如何在我的OWN重新定义的TWIG模板中使用来自IvoryCKEditorBundle TWIG模板的“ckeditor_widget”

[英]IvoryCKEditorBundle Symfony: How to use “ckeditor_widget” from IvoryCKEditorBundle TWIG template in my OWN redefined TWIG template

我在我的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 in: [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

我在这里找到了一个提示

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

它解决了它。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM