设计我们的数据库,表结构,关系

时间:2012-12-08 22:42:00

标签: database

所以,我们正在构建某种“辩论”游戏。有不同的游戏类型,决斗和小组讨论,他们都有一些定义的规则,如辩论的长度,参与者的限制等。

debates
    id
    title
    body
    created
    modified

   debate_posts
        id
        debate_id
        body
        user_id
        created
        modified

debate_participants
    user_id
    debate_id

我需要知道的是如何检查辩论何时开始(必须至少有两个参与者)我应该在第二个加入时存储一些时间戳或类似内容吗?

我想知道的第二件事是如何定义胜利者,我是否应该有第三张桌子,定义辩论的“胜利者”,user_id和debate_id?

我不太确定我应该在问题中添加什么样的细节,但如果有什么可以提供给我,我会很高兴听到它。

更新

辩论者将能够发布帖子直到时间结束,然后会有其他用户投票决定哪些用户/组获胜。

1 个答案:

答案 0 :(得分:2)

我想你需要一个时间戳,表明第二个参与何时加入以了解辩论何时开始。无论何时用户加入辩论查询辩论参与者,以查看该特定辩论中有多少不同的用户,如果有,则新参与者将是第二个,并在辩论中设置开始时间戳。

另一种了解辩论何时开始的方法是找到第二位用户在辩论时间表中发表帖子的最早时间。

要定义获胜者,如果最多只有一名获胜者,您只需在辩论中添加一个winner_id字段,这是您存储用户的关键所在。