内容简介:翻译自:https://stackoverflow.com/questions/22069541/symfony2-sonataadminbundle-how-can-i-get-the-object-representing-the-current
我使用sonata-admin包.
我在PageEntity中与用户(FOSUserBundle)建立了关系.
我想保存创建或更改页面的当前用户.
我的猜测是获取admin类的postUpdate和postPersist方法中的用户对象,并且此对象在setUser方法中传输.
但是如何实现呢?
在google的小组中,我看到了
public function setSecurityContext($securityContext) {
$this->securityContext = $securityContext;
}
public function getSecurityContext() {
return $this->securityContext;
}
public function prePersist($article) {
$user = $this->getSecurityContext()->getToken()->getUser();
$appunto->setOperatore($user->getUsername());
}
但这不起作用
在admin类中,您可以像这样获取当前登录的用户:
$this->getConfigurationPool()->getContainer()->get('security.token_storage')->getToken()->getUser()
编辑基于反馈
而你这样做呢?因为这应该有效.
/**
* {@inheritdoc}
*/
public function prePersist($object)
{
$user = $this->getConfigurationPool()->getContainer()->get('security.token_storage')->getToken()->getUser();
$object->setUser($user);
}
/**
* {@inheritdoc}
*/
public function preUpdate($object)
{
$user = $this->getConfigurationPool()->getContainer()->get('security.token_storage')->getToken()->getUser();
$object->setUser($user);
}
翻译自:https://stackoverflow.com/questions/22069541/symfony2-sonataadminbundle-how-can-i-get-the-object-representing-the-current
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:- vue组件props传值,对象获取不到的问题
- Spring获取ApplicationContext对象工具类的实现方法
- iphone – 在获取PantantID之后,核心数据无法充满对象的错误
- ADO.NET获取数据(DataSet)同时获取表的架构实例
- 根据 PID 获取 K8S Pod名称 - 反之 POD名称 获取 PID
- .NET/C# 如何获取当前进程的 CPU 和内存占用?如何获取全局 CPU 和内存占用?
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
UNIX编程艺术
[美] Eric S. Raymond / 姜宏、何源、蔡晓骏 / 电子工业出版社 / 2012-8 / 99.00元
《UNIX编程艺术》主要介绍了Unix系统领域中的设计和开发哲学、思想文化体系、原则与经验,由公认的Unix编程大师、开源运动领袖人物之一Eric S.Raymond倾力多年写作而成。包括Unix设计者在内的多位领域专家也为《UNIX编程艺术》贡献了宝贵的内容。《UNIX编程艺术》内容涉及社群文化、软件开发设计与实现,覆盖面广、内容深邃,完全展现了作者极其深厚的经验积累和领域智慧。一起来看看 《UNIX编程艺术》 这本书的介绍吧!
HTML 压缩/解压工具
在线压缩/解压 HTML 代码
RGB CMYK 转换工具
RGB CMYK 互转工具