我有一个具有这种结构的数据库表
id title parent_id is_parent
parent_id 是父级的 id,我将 is_parent 添加为布尔值以显示作为父级的元素。
我想从该数据库中提取树视图并将其显示在下拉列表中。这是我正在寻找的内容:
level1
level2
child1
child2
level2_2
child1
child2
level1_2
...
现在,如果我的模型中只有两个级别(父级和子级),我可以这样做:
public function relations()
{
return array(
'getparent' => array(self::BELONGS_TO, 'Region', 'parent_id'),
'childs' => array(self::HAS_MANY, 'Region', 'parent_id', 'order' => 'title ASC'),
);
}
在视图中:
<?php echo $form->dropDownListRow($model,'region',CHtml::listData(Region::model()->findAll('is_parent=0'),'id', 'title','getparent.title'),array('prompt'=>'Choose')); ?>
我不知道如何改变模型中的关系或改变listData结构两个得到我想要的结果。