而不是CGridView我使用fullCalendar扩展来将日历中的数据显示为事件。除此之外我还有过滤选项。
在CGridView中,我们可以编写'dataProvider'=>$model->search(),
来获取搜索数据。同样,我如何向fullCandar扩展提供相同的数据。
答案 0 :(得分:0)
我是通过在Controller中获取数据并将其转换为fullcalendar所期望的形状的数组来实现的:
public function actionCalendar()
{
$data=CalendarEntry::model()->findAll();
$model = array();
foreach ($data as $item) {
array_push($model, array(
'id' => $item->id,
'title' => $item->datetext,
'start' => $item->datedate,
'url' => CController::createUrl('calendar/view', array ('id' => $item->id)),
));
};
$this->render('calendar',array('model'=>$model));
}
在我的日历视图中,我只是设置模型:
$this->widget('application.extensions.fullcalendar.FullcalendarGraphWidget',
array(
'data'=> $model,
'htmlOptions'=>array(
'style'=>'width:800px;margin: 0 auto;'
),
)
);