如何覆盖 SonataUserBundle 表单编辑配置文件?
这里的代码
config.yml
# fos User
fos_user:
db_driver: orm
firewall_name: main
user_class: Application\Sonata\UserBundle\Entity\User
profile:
form:
type: sonata_user_profile
group:
group_class: Application\Sonata\UserBundle\Entity\Group
services:
sonata_user_profile.profile.form.type:
class: Application\Sonata\UserBundle\Form\Type\ProfileType
tags:
- { name: form.type, alias: sonata_user_profile }
arguments: [%fos_user.model.user.class%]
配置文件类型.php
<?php
namespace Application\Sonata\UserBundle\Form\Type;
use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\FormBuilderInterface;
use Symfony\Component\OptionsResolver\OptionsResolverInterface;
class ProfileType extends AbstractType
{
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder
->add('gender', null, array('required' => true))
->add('firstname', null, array('required' => true))
->add('lastname', null, array('required' => true))
->add('dateOfBirth', 'birthday', array('required' => true))
->add('label', null, array('required' => true))
;
}
public function getName()
{
return 'sonata_user_profile';
}
}
我不明白,表单没有被覆盖,服务似乎没有被加载。
如果我在 /src/Application/Sonata/UserBundle/Form/Type/ 的 ProfileType.php 中输入错误
它什么都没有改变,前面没有错误......