У меня есть пользовательский объект для Регистрация пользователя на Symfony 4
У меня есть пользовательский объект, который имеет пароль.
Теперь я хочу обновить некоторые части строки с помощью Sonata Admin Bundle.
Однако он не может обновить сущность пользователя из-за отсутствия пароля.
в моем UserAdmin.php
$formMapper->add('email');
$formMapper->add('nickName',null,array('required' => false));
$formMapper->add('enabled',null,array('required' => false));
Я просто хочу сменить ник или e-mail, не трогая пароль.
в Entity я не использую валидацию, используй Assert
как это
User.php
/**
* @Assert\NotBlank()
* @Assert\Length(max=4096)
*/
private $plainPassword;
/**
* The below length depends on the "algorithm" you use for encoding
* the password, but this works well with bcrypt.
*
* @ORM\Column(type="string", length=64)
*/
private $password;
При регистрации это работает хорошо, как это в контроллере.
$password = $passwordEncoder->encodePassword($user, $user->getPlainPassword());
$user->setPassword($password);
$entityManager = $this->getDoctrine()->getManager();
$entityManager->persist($user);
$entityManager->flush();
Задача ещё не решена.
Других решений пока нет …