接続フォームを送信すると、このエラーが発生します(FOSUserBundleの最新バージョンを使用しています)。
No encoder has been configured for account "MyApp\UtilisateurBundle\Entity\Utilisateur
ここに私のエンティティがあります:
<?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;
}
}
そして、これが私のapp/config/security.ymlです:
imports:
- { resource: "@MyAppFilmothequeBundle/Resources/config/security.yml" }
そしてこれが私の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
私はそれを行うためにこのチュートリアルに従いました: http://j-place.developpez.com/tutoriels/php/ameliorez-vos-applications-developpees-avec-symfony2/#LVI-B-1
どうすればこれを達成できますか?前もって感謝します
これをsecurity.ymlのセキュリティキーに追加してみてください
encoders:
FOS\UserBundle\Model\UserInterface: sha512
っていうことは
security:
encoders:
FOS\UserBundle\Model\UserInterface: sha512
providers:
...
firewalls:
...
LexikJWTAuthenticationBundle でこのエラーが発生しました。
それはわたしを助ける (config/packages/security.yaml
):
security:
encoders:
App\Entity\User:
algorithm: bcrypt