我正在运行Symfony 3.4和FOSUserBundle(主版本) . 我在自定义用户实体中添加了2个新字段:
-
名字
-
姓氏
..而我现在正试图用这2个新字段编辑配置文件编辑表单 . 我按照本教程:Overriding Default FOSUserBundle Forms,这是我的自定义表单:
<?php
namespace MyCompany\PimCoreBundle\Form\Type;
use FOS\UserBundle\Util\LegacyFormHelper;
use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\FormBuilderInterface;
use Symfony\Component\OptionsResolver\OptionsResolver;
use Symfony\Component\Security\Core\Validator\Constraints\UserPassword;
use Symfony\Component\Validator\Constraints\NotBlank;
class ProfileFormType extends AbstractType
{
public function buildForm(FormBuilderInterface $builder, array $options)
{
parent::buildForm($builder, $options);
$builder->add('firstname', 'text', array('label' => 'Firstname'));
$builder->add('lastname', 'text', array('label' => 'Lastname'));
}
public function getParent()
{
return 'FOS\UserBundle\Form\Type\ProfileFormType';
}
public function getBlockPrefix()
{
return 'app_user_profile';
}
}
?>
我的配置:
fos_user:
db_driver: orm # other valid values are 'mongodb' and 'couchdb'
firewall_name: main
user_class: MyCompany\PimCoreBundle\Entity\User
from_email:
address: "contact@MyCompany.com"
sender_name: "MyCompany"
profile:
form:
type: MyCompany\PimCoreBundle\Form\Type\ProfileFormType
..和我的服务:
services:
app.profile.form.type:
class: MyCompany\PimCoreBundle\Form\Type\ProfileFormType
tags:
- { name: form.type, alias: app_user_profile }
我在配置服务ymal文件中进行了更改 . 但我得到这个错误:
Could not load type "app_user_profile": class does not exist.
无法理解什么是错的以及如何调试它!
1 回答
这个问题本身就消失了!
今天早上我只做了一个简单的刷新,它的工作原理 . 我怀疑服务器上的缓存系统(APC和co . )是有罪的 .