当我点击表格行(TbRelationalColumn)时,我想从yii booster实现extendgridview以显示来自另一个表的相关id。
在网站上提供的文档并不足以让我了解如何配置控制器和模型。 http://yiibooster.clevertech.biz/extendedGridView#extendedgridview
我有2张桌子:1个游览和1个游览细节。 表格浏览中的pk是tour_id,tourdetails中的FK是tour_id 在我的模型中我有游览细节
public function relations() {
// NOTE: you may need to adjust the relation name and the related
// class name for the relations automatically generated below.
return array(
'tours' => array(self::BELONGS_TO, 'tours', 'tour_id'),
);
}
在我的导游控制器中我有
$criteria = 'guide_id=' . Yii::app()->user->id;
$dataProvider = new CActiveDataProvider('Toursextra', array(
'criteria' => array(
'condition' => $criteria,
'order' => 'date ASC',
),
));
public function actionRelational()
{
// partially rendering "_relational" view
$this->renderPartial('_relational', array(
'id' => Yii::app()->getRequest()->getParam('id'),
'gridDataProvider' => $this->getGridDataProvider(),
'gridColumns' => $this->getGridColumns()
));
}
在视图中我有
$this->widget('booster.widgets.TbExtendedGridView', array(
'type'=>'striped bordered',
'dataProvider' => $dataProvider,
'template' => "{items}",
'columns' => array(
array(
'class'=>'booster.widgets.TbRelationalColumn',
'name' => 'count',
'url' => $this->createUrl('tours/relational'),
'value'=> '"test-subgrid"',
)
),
));
在视图游览/关系中我有
<?php
echo CHtml::tag('h3',array(),'RELATIONAL DATA EXAMPLE ROW : "'.$id.'"');
$this->widget('booster.widgets.TbExtendedGridView', array(
'type'=>'striped bordered',
'dataProvider' => $dataProvider,
'template' => "{items}",
'columns' => 'money',
));
当我实现解决方案时,我得到一个错误,我不明白这是如何工作的,你在哪里以及如何设置PK,或者我不知道,为什么我会收到错误,如果你们需要更多细节请让我知道。
答案 0 :(得分:0)
在您的视图游览/关系中,您调用$ dataProvider但它不在函数actionRelational中。如果视图中出现错误,Yiibooster会写错误。