1
我已经使用formType(TagsType)在我的主formType(见下文)中包含的bundle中创建了一个标签系统。 我想知道我可以如何将MyFormType中的$ options参数值发送到TagsType。
//...
use EC\TagBundle\Form\Type\TagsType;
class MyFormType extends AbstractType
{
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder
//...
->add('tags', TagsType::class)
//...
;
}
}
我TagsType
//...
use Symfony\Component\Form\Extension\Core\Type\TextType;
class TagsType extends AbstractType
{
/**
* @var ObjectManager
*/
private $manager;
public function __construct(ObjectManager $manager)
{
$this->manager = $manager;
}
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder
->addModelTransformer(new CollectionToArrayTransformer(), true)
->addModelTransformer(new TagsTransformer($this->manager), true)
;
}
public function configureOptions(OptionsResolver $resolver)
{
$resolver->setDefault('attr', [
'class' => 'tag-input',
]);
$resolver->setDefault('required', false);
}
public function getParent()
{
// Il retourne un TextType par défaut.
return TextType::class;
}
}