3

我正在尝试从 FOS 为 symfony 2 设置 UserBundle。当创建一个新用户时,它得到一个没有配置编码器的异常。

如果我确实像这样设置编码器:

fos_user:
    db_driver:orm
    provider_key:fos_userbundle
    班级:
        模型:
            用户:Crm\MyBundle\Entity\User
            组:FOS\UserBundle\Entity\DefaultGroup
    编码器:
        编码as_base64:〜
        算法:~
        迭代:~

我得到一个新异常:InvalidArgumentException。

如果我删除迭代和算法,新的异常就会消失,但是旧的“未配置编码器”又回来了。

在我看来,FOS\UserBundle\Security 中的 EncoderFactory 似乎从未使用过,而是使用了 symfony 的工厂。我不知道该怎么办,因为坦率地说我不知道​​这个“编码器工厂”是做什么的。

没有人可以帮助#symfony (IRC),我发现另一个人有完全相同的问题:http ://groups.google.com/group/symfony-users/browse_thread/thread/1e0f5797d9357295/d6cd0f7dfc721cbd?show_docid=d6cd0f7dfc721cbd

谢谢

4

1 回答 1

5

所以问题是我以错误的顺序加载了我的包...... :)

如果其他人遇到此问题,请确保这是中的registerBundles()顺序AppKernel

新的 Symfony\Bundle\SecurityBundle\SecurityBundle,
新的 FOS\UserBundle\FOSUserBundle(),
于 2011-03-10T11:33:08.890 回答