2015-01-09 4 views
1

Можно ли извлечь кусок шаблона из пруда? мне нужно управлять обновлением таблицы АЯКСА, у меня есть шаблон прут, например:Twig template extract a subset

<html> 
<body> 
<table> 
<thead> 
    <tr><th></th></tr> 
</thead> 
<tbody id="mypiece"> 
    <tr><th></th></tr> 
    <tr><th></th></tr> 
</tbody> 
</table> 
</body> 
</html> 

В первой загрузке мне нужен весь шаблон, с помощью Ajax мне нужно только содержание #mypiece, это possibile извлечь это с ветки с помощью DOM id или с некоторыми другими маркерами?

Единственное, что я нашел, это разделить это на два разных шаблона и использовать включенный стиль.

whole.html

<html> 
    <body> 
    <table> 
    <thead> 
     <tr><th></th></tr> 
    </thead> 
    <tbody id="mypiece"> 
{% include 'content.html' %} 
    </tbody> 
    </table> 
    </body> 
    </html> 

content.html

<tr><th></th></tr> 
    <tr><th></th></tr> 

Но я думаю, что это действительно плохое решение ...

ответ

2

Ну, лично я предпочитаю делать на самом деле их разделить, но если вы намерены получить что-то с AJAX, попробуйте использовать e mbeded контроллеры (в данном случае, конкретно для вашего XHR запроса), например:

<tbody id="mypiece"> 
    {{ render(controller(
     'SomeBundle:SomeController:someAction', 
     { 'someParameter': "something" } 
    )) }} 
</tbody> 

Это намного лучше, чем разобрать некоторые обработанный шаблон, чтобы получить часть его, потому что мне кажется, что дизайн потока.

Еще лучше решить, вернуть данные json данных на вызов ajax и отобразить его в одном из движков шаблонов javascript на стороне клиента.

Надеюсь, это поможет, ура.