我正在使用symfony在网站上工作,在仪表板管理员的部分我喜欢管理员可以更改用户个人资料,以便例如更改用户名或密码
我正在使用FOSuserbundle和表“fos_user”,以便我如何更改用户信息?
答案 0 :(得分:4)
您应该使用fos_user.user_manager
服务。
在您的控制器中,使用
从数据存储中检索用户$userManager = $this->get('fos_user.user_manager');
$user = $userManager->findUserBy(array('id'=> $id)); // get user by id
// or
$user = $userManager->findUserByUsername($username); // get user by username
然后你可以改变你想要的东西,例如:
$user->setEmail('new_email@foo.com');
$user->setPlainPassword('new_password');
最后,您可以使用
更新数据$userManager->updateUser($user);