Извините, если мой английский не очень хорош. Я учу это.
Я выполнил все шаги руководства по установке PUGXMultiUserBundle. Единственное, что я не сделал, — это создал формы для моих сущностей. Я запутался в этом.
Когда я захожу на страницу регистрации для моего пользователя, он говорит мне следующее:
Ловимая фатальная ошибка: Аргумент 1 передан
FOS \ UserBundle \ Doctrine \ UserManager :: __ construct () должен реализовывать
интерфейс
Symfony \ Component \ Security \ Основные \ кодировщика \ EncoderFactoryInterface,
задан экземпляр FOS \ UserBundle \ Util \ PasswordUpdater, вызванный в
C: \ XAMPP \ HTDOCS \ MyProject \ поставщика \ pugx \ многопользовательский-расслоение \ Doctrine \ UserManager.php
на строке 44 и определил
Код менеджера пользователей PUGXMultiUserBundle:
// vendor\pugx\multi-user-bundle\Doctrine\UserManager.php (function __construct)
public function __construct(PasswordUpdaterInterface $passwordUpdater, CanonicalFieldsUpdater $canonicalFieldsUpdater, ObjectManager $om, $class, UserDiscriminator $userDiscriminator)
{
$this->om = $om;
$this->userDiscriminator = $userDiscriminator;
parent::__construct($passwordUpdater, $canonicalFieldsUpdater, $om, $class);
}
Код менеджера пользователей FOSUserBundle:
// vendor\friendsofsymfony\user-bundle\Doctrine\UserManager.php (function __construct)
public function __construct(EncoderFactoryInterface $encoderFactory, CanonicalizerInterface $usernameCanonicalizer, CanonicalizerInterface $emailCanonicalizer, ObjectManager $om, $class)
{
parent::__construct($encoderFactory, $usernameCanonicalizer, $emailCanonicalizer);
$this->objectManager = $om;
$this->repository = $om->getRepository($class);
$metadata = $om->getClassMetadata($class);
$this->class = $metadata->getName();
}
Задача ещё не решена.
Других решений пока нет …