2015-07-12 201 views
1

我试图用一个afterFind的型号Yii2 findOne返回我一个数组,但不是一个对象(ActiveRecord的)

public function afterFind() {     


     $group = GroupMember::findOne(1);; 

     Yii::info($group->id); 

     parent::afterFind(); 
    } 

的方法和错误是

Trying to get property of non-object

我发现findOne返回一个包含列值的数组。

我的问题是我做错了什么,或者只是在找到后,如果做到这一点?

谢谢。

+0

你有一个语法错误:$ group = GroupMember :: findOne(1);;删除一个';'。 –

回答

1

看看文档,findOne()不能返回数组。

最有可能的记录与id = 1 dosn't存在,你会得到nullafterFind()与它无关。

1

@Awesome AP - 这是不急语法错误(用 “;;”)

@arogachev - 在文件中有消息称,

Returns a single active record model instance by a primary key or an array of column values

和其真正返回我的数组,但我不知道为什么。

幸运地我修复了$group = GroupMember::find(1)->one();

但坦克你都帮我。

相关问题