gpt4 book ai didi

forms - 如何根据用户选择的字段值修改 Symfony2 表单?

转载 作者:行者123 更新时间:2023-12-01 05:22:49 25 4
gpt4 key购买 nike

我有一个博客类型,我希望只有当用户在选择字段中进行特定选择时才会将某些字段添加到表单中。我听说过 EventListener,但我认为没有我可以订阅的 FormEvent,因此监听器可以实际跟踪选择事件。

我怎样才能做到这一点?

这是我的博客类型:

namespace Blogger\BlogBundle\Form;

use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\FormBuilderInterface;
use Symfony\Component\OptionsResolver\OptionsResolverInterface;
use Blogger\BlogBundle\Form\EventListener\AddAuthorFieldSubscriber;

class BlogType extends AbstractType
{
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder
->add('title')
->add('blog')
->add('category', 'entity', array(
'class' => 'BloggerBlogBundle:Category',
'property' => 'name',
)
->add('onlyifdefaultcategory')
);
}

public function setDefaultOptions(OptionsResolverInterface $resolver)
{
$resolver->setDefaults(array(
'data_class' => 'Blogger\BlogBundle\Entity\Blog',
'cascade_validation' => true,
));
}

public function getName()
{
return 'blogger_blogbundle_blogtype';
}
}

最佳答案

当您说必须使用事件监听器来实现这一点时,您是对的。 Symfony 食谱中有一篇很好的文章:Here is the Cookbook .

您必须检查“根据基础数据自定义表单”部分。

如果您需要更多信息,请告诉我们,但我认为第一个示例正是您所需要的。

关于forms - 如何根据用户选择的字段值修改 Symfony2 表单?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15599588/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com