Fixtures 클래스에서 PasswordHasherInterface를 자동 연결하려고 합니다.
으아악하지만 오류가 발생했습니다:
DefinitionErrorExceptionPass.php 라인 54: ! !
!!'AppDataFixturesUserFixture' 서비스를 자동 연결할 수 없습니다: 매개변수 '$hasher'
!!메서드 "__construct()"는 "SymfonyComponentPasswordH
인터페이스를 나타냅니다. !!asherPasswordHasherInterface" 그러나 그러한 서비스는 존재하지 않습니다. 서비스를 만드셨나요
!!이 인터페이스를 구현하는 클래스는 무엇입니까?
! !
내 파일 services.yaml:
으아악Symfony 6.1에서 일반 비밀번호를 해시하는 방법은 무엇입니까? 이 오류가 발생하는 이유는 무엇입니까?
모든 경우에 딱 맞는 것은 없습니다
PasswordHasher
.당신:
SymfonyComponentPasswordHasherHasherPasswordHasherFactoryInterface
SymfonyComponentPasswordHasherHasherUserPasswordHasherInterface
사용자*용).팩토리를 사용하면 코드는 다음과 같습니다. (테스트되지 않음)
으아악다시 말하면 단계는 다음과 같습니다.
composer require symfony/password-hasher
UserPasswordHasherInterface
또는PasswordHasherFactoryInterface
로드(예 참조PasswordHasherFactoryInterface
(请参阅示例)并获取PasswordHasher
) 그리고UserPasswordHasherInterface
*: 수정 사항의 예는 여기