覆盖用户表单 Sonata UserBundle

Override Users Form Sonata UserBundle

你好我试着按照这里给出的解释:

向 Sonata Userbundle 注册表添加/删除行,但问题是我发现自己遇到此错误:

以下是我输入的几行代码: 在 src/Application/Sonata/userBundle/Admin/UserAdmin.php

use Sonata\UserBundle\Admin\Model\UserAdmin as BaseUserAdmin;
use Sonata\AdminBundle\Form\FormMapper;
class UserAdmin extends BaseUserAdmin {
    protected function configureFormFields( FormMapper $formMapper ) {
        parent::configureFormFields($formMapper);
        $formMapper
            ->remove('facebookUid');
    }
}

在 app/config/config.php :

sonata_user:
    security_acl: true
    manager_type: orm
    admin:                  # Admin Classes
            user:
                class:          Application\Sonata\UserBundle\Admin\UserAdmin
                controller:     SonataAdminBundle:CRUD

谁能告诉我为什么?谢谢

您忘记声明您的 UserAdmin class 的命名空间。 它必须是第一行代码,在您的情况下就像这样:

<?php
namespace UserBundle\Admin;

use Sonata\UserBundle\Admin\Model\UserAdmin as BaseUserAdmin;
use Sonata\AdminBundle\Form\FormMapper;

class UserAdmin extends BaseUserAdmin {