Symfony1 symfony:myUser类=>;如何访问自定义属性
我已经启用了sfDoctrineGuardPlugin,因此我将Symfony1 symfony:myUser类=>;如何访问自定义属性,symfony1,sfdoctrineguard,Symfony1,Sfdoctrineguard,我已经启用了sfDoctrineGuardPlugin,因此我将myUser类更改为我的类extendssfGuardSecurityUser 我已重写sfGuardUser模式以添加我自己的关系 Personnage: local: id foreign: user_id type: one onUpdate: CASCADE onDelete: CASCADE 生成模型时,如果转到BasesfGuardUser.class.php
myUser
类更改为我的类extendssfGuardSecurityUser
我已重写sfGuardUser模式以添加我自己的关系
Personnage:
local: id
foreign: user_id
type: one
onUpdate: CASCADE
onDelete: CASCADE
生成模型时,如果转到BasesfGuardUser.class.php,我可以在PHPDoc注释中看到我的关系已创建,并且已添加属性Personnage
* @property Personnage $Personnage
但我不明白当我试图访问这个属性时,我不能
在控制器中:
$user = $this->getUser();
$user->Personnage;
鉴于:
echo $sf_user->Personnage
错误是:
Notice: Undefined property: myUser::$Personnage
如何访问此属性?您混淆了两件事:myUser,又名。会话和条令用户,aka。用户的数据库记录 在symfony项目中,myUser类表示当前会话(位于$\u session superglobal之上的包装器) 您可以通过
$this->getUser()->getGuardUser()
访问控制器中的数据库记录,因此您的关系将作为$this->getUser()->getGuardUser()->Personnage运行
另请参阅symfony书的温和介绍部分。您混淆了两件事:myUser,又名。会话和条令用户,aka。用户的数据库记录
在symfony项目中,myUser类表示当前会话(位于$\u session superglobal之上的包装器)
您可以通过$this->getUser()->getGuardUser()
访问控制器中的数据库记录,因此您的关系将作为$this->getUser()->getGuardUser()->Personnage运行
另请参见关于symfony书的温和介绍部分