如何多次使用一个表?

时间:2014-02-11 09:50:47

标签: cakephp

我有一张名为航班的表格,我在其中设置离开到达机场。 机场只是另一张桌子,我只想在航班表中使用机场ID。我怎么能这样做?通常我只能使用一个id(airport_id)如何使用第二个?像airport_id_2?..

我的飞行模型如下所示:

class Flight extends AppModel{
    public $hasOne = "Airport";
}

或者我应该使用联接手动执行此操作吗?

1 个答案:

答案 0 :(得分:1)

您可以使用两个字段:

arrival_airport_id

departure_airport_id

并在您的模型中

public $belongsTo = array(
    "DepartureAirport" => array(
        'className' => 'Airport',
        'foreignKey' => 'departure_airport_id'
    ),
    "ArrivalAirport" => array(
         'className' => 'Airport',
         'foreignKey' => 'arrival_airport_id'
    )
)

PS:我认为正确的关系是属于而不是HasOne,因为一个机场可以与许多航班相关