2015-07-12 26 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();

但坦克你都幫我。

相關問題