覆盖用户表单Sonata UserBundle

时间:2017-06-26 13:41:32

标签: php symfony fosuserbundle sonata-admin sonata-user-bundle

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

How to remove fields from the admin user create page of Sonata User Bundle?

要向Sonata Userbundle注册表单添加/删除行,但问题是我发现自己出现此错误:enter image description here

以下是我提供的几行代码: 在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

有人可以告诉我为什么吗?谢谢

1 个答案:

答案 0 :(得分:1)

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

<?php
namespace UserBundle\Admin;

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

class UserAdmin extends BaseUserAdmin {