我遇到Yii关系的问题。我正在使用CGridView在视图中显示一个表。
我的模型中有以下关系:
'relationName' => array(self::BELONGS_TO, OtherModelName, link_id),
当我调用我的CGridView中的值时,如下例所示,它可以正常工作:
'relationName.field_name',
当我尝试调用数组中的值时,如下例所示:
array('header'=>'tableHeaderName', 'value'=>'$data->relationName->field_name'),
我的页面失败,我收到以下错误:Trying to get property of non-object
有任何想法或建议吗?非常感谢你的帮助。
答案 0 :(得分:1)
我最近遇到过这个问题。你需要这样的东西:
array(
'header'=>'tableHeaderName',
'value'=>'(isset($data->relationName)) ? $data->relationName->field_name : null',
)
如果关系并非总是存在,Yii就会感到害怕。因此,如果您的数据/关系存在任何差距,那么您会遇到问题。
答案 1 :(得分:0)
检查您的relationName
是否与您的任何数据库表具有相同的名称。