2015-07-16 5 views
0

Привет, как использовать эту часть кода с прутиком,

$this->assign('title', 'Home'); 

не

echo $this->assign('title', 'Home'); 

Я попытался,

{% set assign = ('title', 'Home') %} 
{% set this.assign = ('title', 'Home') %} 
{% set assign = {'title', 'Home'} %} 
{{ assign('title', 'Home') }} 

Но все еще не работает

Спасибо

ответ

1

Я не знаю об использовании $this в контексте шаблона (это относится к некоторому сгенерированному экземпляру класса), но вы можете выполнять произвольные операции без печати с помощью do statement.

Д.О. тег работает точно так же, как обычное переменное выражение ({{...}}) только что он ничего не печатает:

{% do 1 + 2 %} 

Чтобы получить доступ мнения сам при использовании TwigView, используйте _view переменную:

{% do _view.assign('title', 'Home') %} 
+0

'{% делают this.assign ('название', 'Home')%}' Dont work :( – MrSaooty

+0

Вы уверены, что «это» существует? Может быть, вы должны передать объект на ветку, чтобы использовать: '$ context = array ('obj' => $ this};', а затем в Twig: '{% do obj.assign ('title', 'Home')%} ' – Anonymous

+0

Да потому, что ' assign ('title', 'Home');?> 'It is work Но, ' {% do this.assign ('title' , 'Контакт')%} 'не работает Я не понимаю, и извините за мой английский ^^ ' – MrSaooty