Perl dancer и Template Toolkit: включение шаблона в шаблон

Я пытаюсь ВКЛЮЧИТЬ шаблон в шаблон, например:

родитель.tt

  <div class="row-fluid">
    <div class="span3">
    [% INCLUDE my_sidebar]
    </div><!--/span-->
   </div>

my_sidebar.tt находится в той же папке, что и parent.tt (/myapp/views)

Я внес следующие изменения в config.yml: С АБСОЛЮТНЫМ

template: "template_toolkit"
engines:
   template_toolkit:
     encoding:  'utf8'
     start_tag: '[%'
     end_tag:   '%]'
     ABSOLUTE : 1

parent.tt содержит:

[% INCLUDE /myapps/views/my_sidebar %]

С РОДСТВЕННИКОМ

template: "template_toolkit"
engines:
   template_toolkit:
     encoding:  'utf8'
     start_tag: '[%'
     end_tag:   '%]'
     RELATIVE : 1
     INCLUDE_PATH: /myapps/views

parent.tt содержит:

[% INCLUDE my_sidebar %]

Но в обоих случаях я получаю следующую ошибку:

core - template - file error - my_sidebar: not found at /.../csm/64-bit/cpan/5.16.1-2012.09/lib/Dancer/Template/Abstract.pm line 90.

person rajeshpalli    schedule 12.02.2013    source источник
comment
попробуй это [% INCLUDE 'my_sidebar.tt' %]   -  person    schedule 12.02.2013


Ответы (1)


Вам нужно включить полное имя файла — my_sidebar.tt — в файл INCLUDE. Dancer автоматически добавляет настраиваемое расширение (по умолчанию .tt) к имени основного шаблона, но TT не знает об этом параметре.

person Dave Sherohman    schedule 12.02.2013