Symfony2 FOSUserBundle重写Form

默认的form包含注册用户,修改用户信息,修改密码等等,如果想对User追加属性,或者追加追加一部分功能,那就需要重写form。

 

  •  创建如下的ORM User类,追加属性name

* 默认情况下,新用户注册时会调用注册验证配置文件,如果需要对name属性做验证,请确保验证文件已经加入name属性。

 

  • 例如追加name属性,可以进行下边修改
    add('name');
        }
    
        public function getName()
        {
            return 'acme_user_registration';
        }
    }
     
  • 修改service.yml配置文件
    # src/Acme/UserBundle/Resources/config/services.yml
    services:
        acme_user.registration.form.type:
            class: Acme\UserBundle\Form\Type\RegistrationFormType
            arguments: [%fos_user.model.user.class%]
            tags:
                - { name: form.type, alias: acme_user_registration }
     
  • 修改config.yml配置文件
    # app/config/config.yml
    fos_user:
        # ...
        registration:
            form:
                type: acme_user_registration
     

你可能感兴趣的:(Symfony2 FOSUserBundle重写Form)