可翻译学说实体的Symfony形式 [英] Symfony forms for Translatable Doctrine entities
本文介绍了可翻译学说实体的Symfony形式的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个Doctrine实体,该实体已使用可翻译的Doctrine扩展名进行了翻译:
I have a Doctrine entity that has been translated using the Translatable Doctrine extension:
<?php
namespace Myapp\ProductBundle\Entity;
use Doctrine\ORM\Mapping as ORM;
use Gedmo\Mapping\Annotation as Gedmo;
use Gedmo\Translatable\Translatable;
/**
* @ORM\Table(name="product_property")
* @ORM\Entity()
* @Gedmo\TranslationEntity()
*/
class Property implements Translatable
{
/**
* @ORM\Column(name="id", type="integer")
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
*/
private $id;
/**
* @Gedmo\Translatable
* @ORM\Column(name="name", type="string", length=255)
*/
private $name;
/**
* @ORM\OneToMany(
* targetEntity="PropertyTranslation",
* mappedBy="object",
* cascade={"persist", "remove"}
* )
*/
private $translations;
/**
* @Gedmo\Locale
* Used locale to override Translation listener`s locale
* this is not a mapped field of entity metadata, just a simple property
*/
private $locale;
public function setTranslatableLocale($locale)
{
$this->locale = $locale;
}
public function getTranslations()
{
return $this->translations;
}
public function addTranslation(PropertyTranslation $t)
{
if (!$this->translations->contains($t)) {
$this->translations[] = $t;
$t->setObject($this);
}
}
}
现在,我想用翻译中可用的每种语言为"name"属性的输入字段呈现一个表单.
Now, I'd like to render a form with an input field for the "name" property in each of the languages available in my translation.
那最好的做法是什么?
推荐答案
It seems that the following bundle is able to do exactly what I was looking for: https://github.com/a2lix/TranslationFormBundle
这篇关于可翻译学说实体的Symfony形式的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文