2013-04-30 75 views
0

这是我的情况......我正在制作一个游戏网站。每场比赛有很多模式,每场比赛也有许多难题。例如,如果游戏是单词搜索游戏,则拼图将是独特的字母网格,并且模式将是游戏如何得分。也许在第一种模式中,游戏是定时的,而在第二种模式中,游戏不是定时的。如果你保持相同的模式,但改变游戏的“谜题”,那么单词搜索中的字母集合会发生变化,但游戏得分的方式保持不变。因此,每场比赛都有很多模式和许多难题。然而,我设计这个的最好方法是创建一个模式和谜题(每个谜题有很多模式,每种模式都有许多难题,每个游戏都有许多mode_puzzles,如果你愿意的话)的HABTM表格。因为这样我可以说每个mode_puzzle都有很多高分。所以结构将是 Game->Mode_Puzzle->Highscore.我可以在CakePHP中自动生成HABTM表吗?

然而使这个实在是烦人,因为每个游戏都有数以百计的难题和模式是真正相关的游戏,而不是单独的难题。如果我有10场比赛,每场比赛有100场谜题,每场比赛有5场模式可以创建5000场比赛的表格,但每场比赛的每一个谜题都是每种模式都很简单。

所以我的问题是,CakePHP是否支持自动生成的HABTM表?或者,我必须手动创建一个表格,尽管表格的逻辑非常明显吗?

+1

那么,游戏独特的谜题?如果是这样,那么肯定你可以做游戏hasMany Puzzles 和拼图hasMany模式 这里没有必要建立一个HABTM关系? – 2013-04-30 10:16:16

+0

你是对的,但我将整个结构缓存在一个线程阵列中,达到4度:游戏 - >模式/拼图 - >高分 - >用户。如果我做了游戏 - >拼图 - >模式 - >高分 - >用户,那么阵列变得巨大。我真的不知道这是否是个问题。 – 2013-04-30 10:46:55

+1

我不认为你必须以这种僵硬的方式来思考它。你也可以关联一个高分; belongsTo游戏/益智/模式/用户(所有人),你可以访问高分;游戏 - >高分或用户 - >高分,并看到相关的模式/益智/用户/游戏高分?有很多选择,所以我想你应该选择对你最有意义的路线。 – 2013-04-30 11:08:07

回答

2

可能是它帮助你: Cake PHP Bake

我只是搜索谷歌和发现这个链接。

+0

谢谢这可能是有帮助的,但它似乎在我的脑海,目前...不知道什么是“控制台”。所以我会研究这一点,但如果你有任何其他好的信息,我将不胜感激,谢谢! – 2013-04-30 11:51:00

相关问题