【问题标题】:get foreign table records in listData function在 listData 函数中获取外部表记录
【发布时间】:2012-06-15 10:48:16
【问题描述】:

这是 YII 框架,我有下表:tbl_banner_location_type

bannerLocationTypeId(PK)    bannerLocationId(FK)    bannerTypeId(FK)
1                           1                       2
2                           2                       5
3                           1                       6

现在我将bannerLocationId 的值作为输入。即1 我想要来自不同表格的所有横幅类型值。 我尝试了以下代码,但出现错误:Property BannerLocationType.$data->bannerType->value" is not defined.

$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; 

请帮忙。

【问题讨论】:

  • 你到底在问什么?也许您正在寻找这个:stackoverflow.com/questions/4435886/yii-model-to-array
  • 我想要数组但是基于bannerTypeId,它的值应该来自BannerType模型。
  • 提供更多信息...bannerType 表的结构以及您在banner_location_type 模型中定义的banner_location_type 和banner_type 表之间的关系

标签: php yii


【解决方案1】:

哦……问题已解决……这太基础了……我的 YII 知识太差了。

我变了

  $data = CHtml::listData($data,'bannerTypeId','$data->bannerType->value');

$data = CHtml::listData($data,'bannerTypeId','bannerType.value');  

如果我的问题不清楚,请向朋友们道歉。但我不确定我该如何表达这个问题。

【讨论】:

    猜你喜欢
    • 2019-08-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-08-04
    • 2020-07-10
    • 1970-01-01
    • 2010-09-21
    相关资源
    最近更新 更多