我有一个数据库,我使用链接表将客户端与tarriff链接,然后再将tarriff链接到tarriffdetails。以下是结构。
Client BaseTarriff BaseTariffDetails
ClientId TarriffId TarriffDetailsId
ClientId TarriffCode
TarriffId
我想使用Client模型访问basetariffdetails,如下所示:
$models = Client::model()->with('tarriff')->findByPk(1);
$model->tarriff->baseTariffDetails->TarriffCode;
模型之间的关系如下:
Client
'tariff' => array(self::BELONGS_TO, 'BaseTariff', 'TarriffId'),
BaseTarriff
'baseTariffDetails' => array(self::HAS_MANY, 'BaseTariffDetails', 'TarriffId'),
感谢。
答案 0 :(得分:0)
如果BaseTarrif只有一个BaseTariffDetails,你可以使用BaseTarrif-> BaseTarifDetails,但是如果BaseTarrif有很多BaseTariffDetails你必须通过$ model迭代,你可以从模型中获得结果。
这里我粘贴了我的代码示例,这是第一种情况
$reservation = Reservation::model()->searchTrack($track->number);
$reservation->status;
$reservation->number;
第二种情况类似于
$reservation = Reservation::model()->searchTrack($track->number);
foreach ($reservation as $key => $value) {
$value->status;
$value->number
}
希望这会对你有所帮助。