0
翻譯我有一個FormErrors幫手:Symfony的形狀誤差由助手
class FormErrors implements \JsonSerializable
{
public function __construct(FormInterface $form)
{
$this->form = $form;
}
public function all()
{
return $this->getErrors($this->form);
}
private function getErrors(FormInterface $form)
{
$result = array();
$result[$form->getName()] = array();
foreach ($form->getErrors() as $error) {
$result[$form->getName()][] = $error->getMessage();
}
foreach ($form->all() as $child)
{
$errors = $this->getErrors($child);
if (count($errors[$child->getName()]))
$result[$form->getName()][$child->getName()] = $errors[$child->getName()];
}
return $result;
}
public function jsonSerialize()
{
return $this->all();
}
}
它這樣使用: return (new \Bundle\Util\FormErrors($form))->all();
但是這個代碼不返回翻譯的消息。 該文檔明確指出$ error-> getMessage()應該返回一個已翻譯的消息。
我到處都是通過區域設置進行調試,它沒有設置爲英文,但我仍然收到英文消息。
我寧願不將容器注入幫助器,因爲我不需要更改幫助器的構造函數,並且因爲我在我的應用程序的許多地方使用此函數,所以可能會破壞代碼。
你有翻譯文件爲您的語言環境? –
@MichaelSivolobov是的 –