FOSUserBundle未配置编码器:创建新用户

Pau*_*aul 13 symfony fosuserbundle

我想在FOSUserBundle(Symfony2)中创建一个新用户,但我总是得到相同的消息(我正在使用php app/console fos:user:create):

没有为帐户"MyProject\UserBundle\Entity\User"配置编码器.

进口顺序正确

public function registerBundles()
{
    $bundles = array(
        //...
        new MyProject\UserBundle\MyProjectUserBundle(),
        new FOS\UserBundle\FOSUserBundle(),
    );
Run Code Online (Sandbox Code Playgroud)

安全文件:

security:
    encoders:
        Symfony\Component\Security\Core\User\User: plaintext

    role_hierarchy:
        ROLE_ADMIN:       ROLE_USER
        ROLE_SUPER_ADMIN: [ROLE_USER, ROLE_ADMIN, ROLE_ALLOWED_TO_SWITCH]
Run Code Online (Sandbox Code Playgroud)

但我总是得到同样的错误......你知道如何解决这个问题吗?这里解决方案 对我不起作用

谢谢

Sel*_*aek 40

您在编码器配置中缺少自己的用户类,例如:

security:
    encoders:
        Symfony\Component\Security\Core\User\User: plaintext
        MyProject\UserBundle\Entity\User: sha512
Run Code Online (Sandbox Code Playgroud)

或者,您可以在FOSUserBundle接口上匹配它,如下所示:

security:
    encoders:
        Symfony\Component\Security\Core\User\User: plaintext
        FOS\UserBundle\Model\UserInterface: sha512
Run Code Online (Sandbox Code Playgroud)