2011-03-25 40 views
0

我想選擇的值返回CGridView(類似於查詢)進一步制定讓我用下面的例子:獲取CGridView返回使用由Yii.To產生的搜索功能選擇的值

這裏我返回基於值「34455」(fk_recordid)

public function search() 
{ 
    $fk_recordid = '34455'; 
    $criteria=new CDbCriteria; 

    $criteria->compare('id',$this->id,true); 
    $criteria->compare('fk_recordid',$fk_recordid,true); 
    $criteria->compare('babypid',$this->babypid); 
    $criteria->compare('babysbn',$this->babysbn); 

    return new CActiveDataProvider(get_class($this), array(
     'criteria'=>$criteria, 
    )); 
} 

我將如何改變這種代碼,以擴大fk_recordid標準,即基於幾個值,如「34455」,「47859」返回記錄的值, '78956'.....

回答

1

而不是compare()像你這樣:

$fk_recordid = '34455'; 
$criteria->compare('fk_recordid',$fk_recordid,true); 

你可以使用addInCondition()像這樣:

$myRecordIds = array('34455','47859','78956'); 
$criteria->addInCondition('fk_recordid',$myRecordIds); 

我不知道你是如何傳遞所有從CGridView這些記錄ID來搜索()函數,但一旦你有他們addInCondition()將工作。我希望這有幫助!

+0

謝謝!這已經結束了我的週末 – davykiash 2011-03-25 16:26:26