我有一个包含这些字段的模型:
id , name , parent_id
我在这张表中存储了一个分层结构。
somw 示例记录是:
1 - fruits - 0
2 - foods - 0
3 - colors - 0
4 - apple - 1
5 - red - 3
6 - meat- 2
在管理(管理)页面的网格视图中,我想显示父名称而不是其 ID。所以我在模型(东西)中定义了这种关系。
public function relations()
{
return array(
'parent' => array(self::BELONGS_TO, 'stuff', 'parent_id'),
);
}
并认为:
<?php
$this->widget('zii.widgets.grid.CGridView', array(
'id'=>'mygrid',
'dataProvider'=>$model->search(),
'filter'=>$model,
'columns'=>array(
'id',
'name',
array(
'name' => 'parent name',
'value' => '$data->parent->name'
),
array(
'class'=>'CButtonColumn',
),
),
));
?>
但是我在管理页面上收到“尝试获取非对象的属性”错误。似乎是因为根专利的 parent_id 为 '0' 并且没有 id=0 的记录。
我该如何处理这个问题?
提前谢谢你。