我想在操作菜单下添加一个图标“查看子类别”以及类别视图中的“编辑”,“更新”,“删除”等,点击“查看子类别”,它将显示管理员查看该类别中的所有子类别,到目前为止我已经为该选项添加了控制器操作,我从中获取了类别ID,我不知道如何将所有子类别详细信息传递到子类别的管理视图中,我非常感谢任何帮助。 我在类别视图中添加了选项视图Subcategory,如:
array('label'=>'View SubCategory', 'url'=>array('/subcategory/viewsub', 'id'=>$model->categoryid)),
感谢。
答案 0 :(得分:1)
如果要添加额外的图标以查看子类别,则需要在cgridview中更改cbuttoncolumn,并且需要添加imageUrl并为图像提供路径。
array(
'class'=>'CButtonColumn',
'template'=>'{view}{update}{size}{subcategory}{delete}',
'buttons'=>array
(
'subcategory' => array
(
'label'=>'Subcategories',
'imageUrl'=>Yii::app()->request->baseUrl.'/images/subcat-icon.png',
'url'=>'Yii::app()->createUrl("/subCategory/admin", array("id"=>$data->subcatid))',
),
),
),
添加此代码代替CButtonColumn数组。请根据您的要求更改路径等
====================编辑========================== ================= 子类别的管理行为---
public function actionAdmin($parent_id)
{
$model = new SubCategory('search');
$model->unsetAttributes(); // clear any default values
if(isset($_GET['SubCategory']))
$model->attributes=$_GET['SubCategory'];
$this->render('admin',array(
'model'=>$model,'parent_id'=>$parent_id
));
}
==================在子类别视图文件夹中的cgridview中的admin.php中==================
像这样改变你的cgridview dataprovider行。将parent_id传递给搜索功能
'dataProvider'=>$model->search($product_id),
===子类别内的模型========================
像这样更改搜索功能标题..接受参数。
public function search($parent_id)
{
//all other code here
//add condition like this
// in you subcategory table if you are using parent_id as parent category id or what ever change according to that
if(isset($parent_id)){
$criteria->condition = 't.parent_id='.$parent_id;
}
答案 1 :(得分:0)