【问题标题】:Update specific user FOSuserbundle更新特定用户 FOSuserbundle
【发布时间】:2016-03-30 00:43:51
【问题描述】:

我正在使用 symfony 开发一个网站,在仪表板管理员部分,我喜欢管理员可以更改用户配置文件,例如更改用户名或密码

我正在使用 FOSuserbundle 并且还使用表“fos_user”,所以我如何更改用户信息?

【问题讨论】:

  • 看看stackoverflow.com/questions/1853676/…,还要注意这个问题被关闭的原因。您可能需要更具体地说明您尝试过的内容以及遇到的问题
  • 请向我们展示您尝试过的内容以及您在尝试中遇到的错误。也请阅读这个页面来学习如何写一个好问题:stackoverflow.com/help/how-to-ask
  • 别忘了标记正确答案!在我看来问题解决了!
  • @TimOgilvy 这是我的第一个问题 :)
  • @RenatoMendesFigueiredo 完成谢谢 :)

标签: php symfony web fosuserbundle


【解决方案1】:

您应该使用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);

【讨论】:

  • 即使我更新用户名和 finduserbyusername 也能正常工作?
  • 你可以更改用户名,是的。
猜你喜欢
  • 2013-05-17
  • 2012-06-02
  • 1970-01-01
  • 2013-12-05
  • 1970-01-01
  • 1970-01-01
  • 2012-12-25
  • 2021-10-04
  • 2020-05-10
相关资源
最近更新 更多