在树枝内使用Typeahead模板

时间:2014-01-12 19:16:36

标签: symfony twig bootstrap-typeahead

我正在使用symfony2并且想要使用typeahead,我在twig中包含配置,因此我无法呈现模板,因为这种语法:{{ var }}与Twig相同。 我该如何解决这个问题?

这是typeahead的代码:

$('.example-twitter-oss .typeahead').typeahead({
  name: 'twitter-oss',
  prefetch: '../data/repos.json',
  template: [
    '<p class="repo-language">{{language}}</p>',
    '<p class="repo-name">{{name}}</p>',
    '<p class="repo-description">{{description}}</p>'
  ].join(''),
  engine: Hogan
});

1 个答案:

答案 0 :(得分:3)

修改

您可以使用{% verbatim %}标记(从1.12开始)或{% raw %}标记(在1.12之前)暂时忽略Twig标记:

{% verbatim %}
$('.example-twitter-oss .typeahead').typeahead({
  name: 'twitter-oss',
  prefetch: '../data/repos.json',
  template: [
    '<p class="repo-language">{{language}}</p>',
    '<p class="repo-name">{{name}}</p>',
    '<p class="repo-description">{{description}}</p>'
  ].join(''),
  engine: Hogan
});
{% endverbatim %}
  

<强>原始   我所知道的唯一解决方案是用Twig回应这些元素:

$('.example-twitter-oss .typeahead').typeahead({
  name: 'twitter-oss',
  prefetch: '../data/repos.json',
  template: [
    '<p class="repo-language">{{ '{{language}}' }}</p>',
    '<p class="repo-name">{{ '{{name}}' }}</p>',
    '<p class="repo-description">{{ '{{description}}' }}</p>'
  ].join(''),
  engine: Hogan
});