我在如何在树枝模板中使用新创建的树枝扩展时遇到了麻烦,但除非我知道它有效,否则我不明白为什么
让我们解释一下这个例子
class MyTwigExtension extends \Twig_Extension
{
public function getTests(){
return array('instanceof' => new \Twig_Test_Method($this, 'isInstanceof'),
'appenmantenimiento' => new \Twig_Test_Method($this, 'appEnMantenimiento')
);
}
public function isInstanceof($var, $clase) {
$class = "AppBundle\\Entity\\".$clase;
return $var instanceof $class;
}
public function appEnMantenimiento(){
check the DataBase....
return TRUE or FALSE;
}
public function getName(){
return "mytwig_extension";
}
}
那么,我怎么能使用appEnMantenimiento函数,我的意思是
{% if entity is instanceof('MyClass') %} {# WORKS FINE #}
{% if appenmantenimiento() %} OK {% endif %} {# DOESN'T WORK #}
{% if true is appenmantenimiento() %} OK {% endif %} {# WORKS fine with the returned value form appenmantenimiento() #}
但问题是我不明白为什么
答案 0 :(得分:1)
您是否尝试添加getFunctions方法? 有关详细信息,请参阅:https://twig.symfony.com/doc/2.x/advanced.html#id2
decode()