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(),
);
файл безопасности:
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]
но я всегда получаю ту же ошибку... Вы знаете, как это исправить? здесь
не работает для меня
Спасибо
Ответы
Ответ 1
В конфигурации кодеров отсутствует собственный класс пользователя, например:
security:
encoders:
Symfony\Component\Security\Core\User\User: plaintext
MyProject\UserBundle\Entity\User: sha512
В качестве альтернативы вы можете сопоставить его на интерфейсе FOSUserBundle следующим образом:
security:
encoders:
Symfony\Component\Security\Core\User\User: plaintext
FOS\UserBundle\Model\UserInterface: sha512
Ответ 2
Для Symfony 2.7 вы должны использовать эту конфигурацию
security:
encoders:
FOS\UserBundle\Model\UserInterface: bcrypt
НО! вы также должны иметь php5.5 и Apache2.4/Ngnix