ZfcUser使用额外的get函数扩展User类

时间:2013-05-24 11:40:27

标签: zend-framework2 zfcuser

我是Zend2 Framework的新手,并且已经安装了ZfcUser,并添加了一个我希望通过以下方式访问的数据库列:

<?php echo $this->zfcUserIdentity()->getOrg(); ?>

非常感谢任何有关扩展用户类以访问此变量的帮助。

赖安

1 个答案:

答案 0 :(得分:1)

扩展ZfcUser用户实体以包含新属性和访问者。您需要在自己的模块中执行此操作,或者如果您正在使用骨架应用程序,则Application模块将起作用。

<?php
namespace Application\Entity;

use ZfcUser\Entity\User;

class MyUser extends User
{
    protected $org;

    public function setOrg($org)
    {
        $this->org = $org;
        return $this;
    } 

    public function getOrg()
    {
        return $this->org;
    } 
}

vendor/ZfcUser/config/zfcuser.global.php.dist复制到/config/autoload/zfcuser.global.php

打开刚刚在编辑器中复制的文件,找到下面的部分

 /**
 * User Model Entity Class
 *
 * Name of Entity class to use. Useful for using your own entity class
 * instead of the default one provided. Default is ZfcUser\Entity\User.
 * The entity class should implement ZfcUser\Entity\UserInterface
 */
//'user_entity_class' => 'ZfcUser\Entity\User',

取消注释该行,并将该值替换为您创建的MyUser实体的完全限定类名

'user_entity_class' => 'Application\Entity\MyUser',

然后尝试访问您的方法

<?php echo $this->zfcUserIdentity()->getOrg(); ?>