我在 view&id=n
中展示了另一个相关模型的 CGridView页。必要的关系包含在模型文件中,一切正常。唯一的问题是 CButtonColumn
中的按钮链接到正在打开页面的模型的适当操作,而我希望它们链接到相关模型的操作。
为了清楚地解释我的意思,这是我的代码。在 view.php
的 Order
型号:
$dataProvider=new CActiveDataProvider('OrderContents', array(
'criteria'=>array(
'condition'=>'order_id='.$model->id,
'with'=>array('order'),
),
'pagination'=>array(
'pageSize'=>20,
),
));
$this->widget('zii.widgets.grid.CGridView', array(
'id'=>'orders-contents-grid',
'dataProvider'=>$dataProvider,
'columns'=>array(
'id',
'comp_name',
'quantity',
'comment',
array(
'class'=>'CButtonColumn',
),
),
));
因此,我想要 CButtonColumn
中的按钮链接到 OrderContents
的适当操作模型,而现在有链接到 Order
的操作模型。有什么简单的方法可以实现这一目标吗?我检查了 CButtonColumn
的 API和 CGridView
看看我是否能在那里得到任何灵感,但没有运气。
最佳答案
实际上,如果您只想更改 URL,则甚至不需要创建自定义按钮。查看 CButtonColumn 的 viewButtonUrl
、updateButtonUrl
和 deleteButtonUrl
。
您将按照其他答案所示调整网址
关于php - CGridView 中另一个模型的 CButtonColumn,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11032058/