我正在构建一个Yii应用程序,我按照教程在这样的表的索引文件中启用高级搜索:
<?php
/* @var $this TakeController */
/* @var $dataProvider CActiveDataProvider */
$this->breadcrumbs=array(
'Takes',
);
$this->menu=array(
array('label'=>'Create Take', 'url'=>array('create')),
array('label'=>'Manage Take', 'url'=>array('admin')),
);
Yii::app()->clientScript->registerScript('search', "
$('.search-button').click(function(){
$('.search-form').toggle();
return false;
});
$('.search-form form').submit(function(){
$.fn.yiiListView.update('takelistview', {
data: $(this).serialize()
});
return false;
});
");
?>
<h1>Takes</h1>
<?php echo CHtml::link('Advanced Search','#',array('class'=>'search-button')); ?>
<div class="search-form" style="display:none">
<?php $this->renderPartial('_search',array(
'model'=>$model,
)); ?>
</div>
<?php $this->widget('zii.widgets.CListView', array(
'dataProvider'=>$dataProvider,
'itemView'=>'_view',
'id'=>'takelistview',
'sortableAttributes'=>array('id', 'data'')
)); ?>
我想知道是否有办法处理高级搜索的输出。我知道使用$ dataprovider我可以访问该表的所有记录,但我只想访问已过滤的记录。特别是,我想获得属性&#34; data&#34;对于每条记录,以便为所有过滤的记录启用下载。我看了$ .fn.yiiListView和CListView,但我不明白该怎么做。你能帮助我吗?谢谢!
答案 0 :(得分:0)
$dataProvider
变量属于CDataProvider
类,您可以使用getdata函数访问数据,如下所示。
$data = $dataProvider->getData($refresh);
如果要从数据源重新加载数据
,请将$refresh
标志设置为true
有关更多dataProvider方法,请参阅完整数据提供程序documentation