这是YII框架,我有以下表:tbl_banner_location_type
bannerLocationTypeId(PK) bannerLocationId(FK) bannerTypeId(FK)
1 1 2
2 2 5
3 1 6
现在我将bannerLocationId的值作为输入。即1 我想要来自不同表格的所有横幅类型值。 我尝试过以下代码,但收到错误:属性BannerLocationType。$ data-> bannerType-> value“未定义。
$data = BannerLocationType::model()->findAll('bannerLocationId=:bannerLocationId',
array(':bannerLocationId'=>(int) $_POST['bannerLocationId']));
$data = CHtml::listData($data,'bannerTypeId','$data->bannerType->value');
echo CHtml::tag('option', array('value'=>''),CHtml::encode('- - Select - -'),true);
foreach($data as $value=>$name)
{
echo CHtml::tag('option',
array('value'=>$value),CHtml::encode($name),true);
}
我知道我可以通过以下方式获得它的价值,但我想要数组。
$obj= BannerLocationType::model()->findByPk($id);
$obj->bannerType->value;
请帮忙。
答案 0 :(得分:4)
哦......问题是固定的......那是如此基本......我的YII知识很差。
我已经改变了
$data = CHtml::listData($data,'bannerTypeId','$data->bannerType->value');
与
$data = CHtml::listData($data,'bannerTypeId','bannerType.value');
对不起朋友,如果我的问题不清楚。但我不确定我是如何代表这个问题的。