J'ai cette erreur lorsque je soumets le formulaire de connexion (j'utilise la dernière version de FOSUserBundle):
No encoder has been configured for account "MyApp\UtilisateurBundle\Entity\Utilisateur
voici mon entité:
<?php
namespace MyApp\UtilisateurBundle\Entity;
use FOS\UserBundle\Entity\User as BaseUser;
use Doctrine\ORM\Mapping as ORM;
/**
* @ORM\Entity
*/
class Utilisateur extends BaseUser
{
/**
* @ORM\Id
* @ORM\Column(type="integer")
* @ORM\generatedValue(strategy="AUTO")
*/
protected $id;
public function __construct()
{
parent::__construct();
}
/**
* Get id
*
* @return integer
*/
public function getId()
{
return $this->id;
}
}
et voici mon app/config/security.yml:
imports:
- { resource: "@MyAppFilmothequeBundle/Resources/config/security.yml" }
et voici mon src/MyApp/FilmothequeBundle/Ressources/config/security.yml:
security:
providers:
fos_userbundle:
id: fos_user.user_manager
firewalls:
main:
pattern: .*
form_login:
provider: fos_userbundle
login_path: /myapp/login
use_forward: false
check_path: /myapp/login_check
failure_path: null
default_target_path: /myapp
logout:
path: /myapp/logout
target: /myapp
anonymous: true
J'ai suivi ce tutoriel pour faire cela: http://j-place.developpez.com/tutoriels/php/ameliorez-vos-applications-developpees-avec-symfony2/#LVI-B-1
Comment puis-je atteindre cet objectif? Merci d'avance
Essayez d'ajouter ceci à la clé de sécurité dans security.yml
encoders:
FOS\UserBundle\Model\UserInterface: sha512
alors c'est
security:
encoders:
FOS\UserBundle\Model\UserInterface: sha512
providers:
...
firewalls:
...
Je recevais cette erreur sur LexikJWTAuthenticationBundle .
Cela m'aide (config/packages/security.yaml
):
security:
encoders:
App\Entity\User:
algorithm: bcrypt