次の Category エンティティとその CategoryTranslation エンティティを検討してください: http://github.com/l3pp4rd/DoctrineExtensions/blob/master/doc/translatable.md#personal-translations
翻訳を簡単に追加するためのフォームを作成したい。
TranslationType で部分的に一般的なため、便利な機能的なソリューションがあります。しかし、それは更新に制限されています.. (->抽象クラスの使用)
class TranslationType extends AbstractType
{
public function buildForm(FormBuilder $builder, array $options)
{
$builder
->add('locale')
->add('field')
->add('content')
;
}
public function getDefaultOptions()
{
return array(
'data_class' => 'Gedmo\Translatable\Entity\MappedSuperclass\AbstractPersonalTranslation'
);
}
public function getName()
{
return 'translation';
}
}
class CategoryType extends AbstractType
{
public function buildForm(FormBuilder $builder, array $options)
{
$builder
->add('title')
->add('description')
->add('translations', 'collection', array(
'type' => new TranslationType()
))
;
}
public function getDefaultOptions()
{
return array(
'data_class' => 'Category'
);
}
public function getName()
{
return 'categ';
}
}
解決策が見えますか?
ありがとう。