hola aca un pequeño tuto sobre symfony 2 que quiero compartir con la comunidad
deseas traducir los formularios generados por doctrine y no morir en el intento
existe una forma muy facil la cual describo aca
Código PHP:
use SymfonyComponentFormAbstractType;
use SymfonyComponentFormFormBuilder;
use SymfonyComponentTranslationTranslator;
class Tuformulariodoctrine extends AbstractType
{
protected $Translator;
public function setTranslator (Translator $Translator)
{
///referenciamos el Translator
$this->Translator= $Translator;
}
public function getTranslator()
{
//lo optenemos
return $this->Translator;
}
public function buildForm(FormBuilder $builder, array $options)
{
//lo llamamos y aplicamos el metodo trans
$builder->add('lastname','text',array("label"=>$this->getTranslator()->trans('LastName.message')))
}
}
Código PHP:
$tuformulariodoctrine =new Tuformulariodoctrine ();
/// la magia sucede aca creamos la referencia
$tuformulariodoctrine ->setTranslator($this->get('translator'));
$form = $this->createForm(tuformulariodoctrine, $entity);
creo que la forma mas facil no te rompes la cabeza ya que symfony es muy flexible
aunque no se si sea el mejor metodo a mi me funciono y es la forma mas limpia la unica desventaja es que daña los validadores del formularios creo que en ese caso habria que hacerlo de forma directa en el modelo o extenderla de FormBuilder y sobreescribir el metodo add pero es mas trabajo espero que les ayda podido ayudar gracias por todo