无法在BaseEntity类中使用静态方法作为序列化程序抱怨

时间:2013-10-16 14:34:30

标签: php symfony doctrine

我的所有实体和文档都扩展了一个BaseObject类(它处理getId(),getClassName()和几个方便的快捷方式。)

我添加了一个静态的特征数组 - 所以我可以在动态添加表单和验证规则时迭代这些特征​​。

/**
 * Class BaseObject
 */
abstract class BaseObject
{
    protected $id;

    public static $traits = ['blame', 'time', 'live', 'when', 'where', 'ugc', 'security'];
...

但是,当我尝试登录时,我收到以下错误 -

*注意:serialize():“traits”作为成员变量从__sleep()返回但在...中不存在... symfony / symfony / src / Symfony / Component / Security / Core / Authentication / Token / AbstractToken.php 149行

我应该在其他地方存储这个特征列表,还是我应该在这里做些什么呢?有些帖子指向使用Serializable接口,但我不确定使用它的最佳方法是什么。

谢谢, 詹姆斯

0 个答案:

没有答案