4
我有一个比赛网站,CakePHP的,在这里我需要管理一样详情如下条件:CakePHP的两个外键在同一表
会有之间的斗争竞争两种竞争的,我需要管理一个匹配师和比赛时间表,这里的竞争对手和对手将是相同的从竞争对手的表的外键,意味着相同的用户会相互反对,比在这种情况下,我怎么能保存两个相同的领域(competitor_id)到比赛时间表的表为和管理员也可以管理,竞争对手的订单,如果某些竞争对手不可用等
我有一个比赛网站,CakePHP的,在这里我需要管理一样详情如下条件:CakePHP的两个外键在同一表
会有之间的斗争竞争两种竞争的,我需要管理一个匹配师和比赛时间表,这里的竞争对手和对手将是相同的从竞争对手的表的外键,意味着相同的用户会相互反对,比在这种情况下,我怎么能保存两个相同的领域(competitor_id)到比赛时间表的表为和管理员也可以管理,竞争对手的订单,如果某些竞争对手不可用等
你的问题有点混淆到最后,你是否试图简单地创建从预定的活动和用户中吃了2个关系(与竞争对手和对手的事件)?如果是这样,可以通过使用外键扩展您的日程安排模型中的关系来实现。
你可以这样说的:
var $hasMany = array('Competitor');
您可以展开和设置外键和表名:
var $hasMany = array(
'Competitor' => array(
'className' => 'Competitor',
'foreignKey' => 'competitor_id'
),
'Opponent' => array(
'className' => 'Competitor',
'foreignKey' => 'opponent_id'
)
);
这将设置2间的关系,以相同的模式,您可以单独保存。 Further reading.
嘿,对于混淆的词语感到抱歉,但我的意思是说,竞争对手和对手不是单独的东西,两者都只是竞争对手,但我想管理他们,一个是竞争对手,一个是对手,希望这清楚你更多.. – 2011-03-10 10:11:43
很酷,那么我的答案应该没问题:)竞争对手和对手将来自同一个表,但具有不同的外键。 – Dunhamzzz 2011-03-10 11:14:51
这称为别名:)应该可以帮助你,如果你想搜索更多。 – dogmatic69 2011-03-10 19:40:32