我在项目中使用JMS Translation Bundle(https://github.com/schmittjoh/JMSTranslationBundle)。
我有这个函数,它返回一个数组,每个标签前都有@Ignore。但即使@Ignore存在,JMS也会生成翻译密钥。
private function getStatusSelect()
{
return array(
"URLverify"=>array(
'label' => /** @Ignore */'Certificates left',
'url' => $this->generateUrl('admin_liste_verif_ready'),
),
"URLlistToAccept"=>array(
'label' => /** @Ignore */'List to accept',
'url' => $this->generateUrl('admin_liste_verif'),
),
"URLaccepted"=>array(
'label' => /** @Ignore */'Accepted',
'url' => $this->generateUrl('admin_liste_index_accepted_action'),
),
"URLrejected"=>array(
'label' => /** @Ignore */'Rejected',
'url' => $this->generateUrl('admin_liste_index_rejected_action'),
),
);
}
在我的代码中很多其他地方@Ignore完全正常工作,但不是在这种情况下。
你知道为什么吗?
谢谢你
BOUFFE
答案 0 :(得分:2)
我一直认为你应该在密钥之前添加它。 JMSTranslationBundle查找"标签"键并尝试从中提取翻译。 (与键#34;选择"相同)。请尝试以下方法:
private function getStatusSelect()
{
return array(
"URLverify" => array(
/** @Ignore */
'label' => 'Certificates left',
'url' => $this->generateUrl('admin_liste_verif_ready'),
),
// ...
);
}