2017-04-15 79 views
1

我在SYMFONY 3.2項目中實現了IvoryCKEditorBundle。IvoryCKEditorBundle Symfony:如何使用IvoryCKEditorBundle中的「ckeditor_widget」我OWN中的TWIG模板重新定義了TWIG模板

我遵循了here的指導原則,並對doc on the official Symfony site進行了概述。

現在我看到在IvoryCKEditorBundle目錄下面的文件退出:

  • [我 項目] \供應商\ egoloen \ CKEditor的束\資源\意見\表格\ ckeditor_widget.html.twig
  • [我 項目] \供應商\ egoloen \ CKEditor的束\嫩枝\ CKEditorExtension.php

而且[my project]\vendor\egoloen\ckeditor-bundle\Resources\views\Form\ckeditor_widget.html.twig定義{% block ckeditor_widget %}

在我的projet中,我使用official doc中給出的所有技巧重新定義了我自己的模板來渲染表單。而[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' %}它拋出的錯誤:

Block "ckeditor_widget" on template "form_div_layout.html.twig" does not exist in "form_div_layout.html.twig".

當行{% use 'CKEditorBundle:Form:ckeditor_widget.html.twig' %}實現,它拋出一個錯誤是:

Unable to find template "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

回答

0

我找到了a hint here

[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' %}

它修復了它。

相關問題