2014-06-10 32 views
0

我在我的模型中使用事件代碼生成方法search(),它以$ this-> search() - > data返回一個Events對象數組。不過,我想要爲我的jqGrid有一個關聯數組Events數據與CDbCriteria而不是Yii::app()->db->createCommand()->Select('...')->From('...')->Where('...')如何檢索Assoc。在Yii中使用Cdbcriteria的數組

任何想法如何做到這一點與:

public function search(){ 

$criteria=new CDbCriteria; 

$criteria->compare('id',$this->id); 
$criteria->compare('Date',$this->Date,true); 


} 

回答

0

您可以創建模型中的一個新功能:假設您的型號名稱是用戶。

public static function getValues($criteria){ 
      $array_result = array(); 
      $results = User::model()->findAll($criteria); 
      foreach($results as $result){ 
        $array_result[$result->id] = $result->date;   
      } 
      return $array_result; 
    } 

你可以用你想要的一切的關鍵,而$ result->你想要的陣列上的任何值之日起代替$ result-> ID。您可以通過將條件傳遞給函數來檢索結果。如果你想要的話,你可以刪除條件參數,只要獲取所有結果或者在函數內部指定條件,如果你不需要它是非常動態的。