开发者

Get CGridView to return selected values

I would like to return selected values t开发者_开发百科o the CGridView (similar to IN query) using the search function that is generated by Yii.To elaborate further let me use the example below:

Here I return values of the based on the value '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,
    ));
}

How would I change this code to widen the fk_recordid criteria i.e return records based on several values such as '34455','47859','78956' .....


Instead of compare() like you have:

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

You could use addInCondition() like so:

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

I don't know how you are passing in all of these record ids from the CGridView to the search() function, but once you have them addInCondition() will work. I hope this helps!

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜