Geçenlerde Yii 1.1.x kullanarak özel bir anahtar kelime arama inşa etmeye başladı
Arama% 100 çalışıyor. Ama en kısa sürede ben sütunları sıralamak ve yönetici görünümünde sayfalamayı kullanmak gibi arama kaybolur ve tüm sonuçlar gösterilmiştir. Sadece arama sonuçları gösteriyor ki öylesine Başka türlü ifade ile bu filtreleme değil. Her nasılsa onu sıfırlar.
Aşağıdaki gibi benim denetleyicisi benim kod görünüyor
$builder=Messages::model()->getCommandBuilder();
//Table1 Columns
$columns1=array('0'=>'id','1'=>'to','2'=>'from','3'=>'message','4'=>'error_code','5'=>'date_send');
//Table 2 Columns
$columns2=array('0'=>'username');
//building the Keywords
$keywords = explode(' ',$_REQUEST['search']);
$count=0;
foreach($keywords as $key){
$kw[$count]=$key;
++$count;
}
$keywords=$kw;
$condition1=$builder->createSearchCondition(Messages::model()->tableName(),$columns1,$keywords,$prefix='t.');
$condition2=$builder->createSearchCondition(Users::model()->tableName(),$columns2,$keywords);
$condition = substr($condition1,0,-1) . " OR ".substr($condition2,1);
$condition = str_replace('AND','OR',$condition);
$dataProvider=new CActiveDataProvider('Messages', array(
'pagination'=>array(
'pageSize'=>self::PAGE_SIZE,
),
'criteria'=>array(
'with'=>'users',
'together'=>true,
'joinType'=>'LEFT JOIN',
'condition'=>$condition,
),
'sort'=>$sort,
));
$this->render('admin',array(
'dataProvider'=>$dataProvider,'keywords'=>implode(' ',$keywords),'sort'=>$sort
));
ve bence bu gibi görünüyor
$this->widget('zii.widgets.grid.CGridView', array(
'dataProvider'=>$dataProvider,
'columns'=>array(
'id',
array(
'name'=>'user_id',
'value'=>'CHtml::encode(Users::model()->getReseller($data->user_id))',
'visible'=>Yii::app()->user->checkAccess('poweradministrator')
),
'to',
'from',
'message',
/*
'date_send',
*/
array(
'name'=>'error_code',
'value'=>'CHtml::encode($data->status($data->error_code))',
),
array(
'class'=>'CButtonColumn',
'template'=>'{view} {delete}',
),
),
));
Ben gerçekten korkunç kayboldum beri artık ne yapacağız bilmiyorum, herhangi bir yardım hihsly takdir edilecektir