1

我有一个表“MEDICATION”,它与“GENERICS_MED_TRADENAMES”表相连。“GENERICS_MED_TRADENAMES”表包含在 LIST_OF_VALUES 表中引用的药物形式。在得到 MEDICATION 的结果集后DataProviderListView我想使用 Yii 模型关系访问存储在 LIST_OF_VALUES 表中的 DRUG_FORM 描述。我尝试了以下但没有奏效:

'genMedStrnDrgform' => array(self::BELONGS_TO, 'GenericsMedTradenames', 'gen_med_strn_drgform_id'), -- This is okay, I can access the attributes 
'drugForm' => array(self::BELONGS_TO, 'ListOfValues', 'genMedStrnDrgform.drug_form_id'), -- This does not work since it is nested. Yii thorws error.

为了进一步解释我想要什么,我还以 SQL 查询的形式解释了相同的内容(放置快照,因为缩进很难以正确的方式提出我的问题):

在此处输入图像描述

Pentim10回复后编辑:

我需要显示 DrugFrom 描述并在 ListView 文件中尝试了以下操作,但两者都不起作用:drugForm->group_display_val

"$data->genMedStrnDrgform->drugForm->group_display_val"
 "$data->drugForm->group_display_val" 
4

1 回答 1

1

放置在Medication

'genMedStrnDrgform' => array(self::BELONGS_TO, 'GenericsMedTradenames', 'gen_med_strn_drgform_id')

放入GenericsMedTradenames

'drugForm' => array(self::BELONGS_TO, 'ListOfValues', 'drug_form_id')

然后像这样进行查询:

$posts=Medication::model()->findAll(array(
    'with'=>array(
        'genMedStrnDrgform',
        'genMedStrnDrgform.drugForm'
    )
));
于 2014-02-01T19:27:13.587 回答