我有三个表Feed
,Vote
和Event
。
Feed
+id
+content
+voteCount --> hold the number of votes on this feed
Vote
+id
+feedId --> FK to id in Feed
+eventId --> FK to id in Event
Event
+id
+name
+voteCount --> hold the number of votes on this event
event
和feed
都可以由用户进行投票。 Vote
表格会跟踪哪些人一直在投票,因为每个人只允许在event
或feed
投票一次。所以这是我的问题:当我创建event Y
时,我还会创建一个feed
说X created event Y
,它将出现在用户X
个人资料中。如果有人投票 投标或事件Y,则投票两者 event Y
以及投票{{1如果feed
应该两者为1。
一个。实现上述目标的最佳方式是什么??
湾如果X created event Y
已经对X
feed
投了票,那么他就不能再对X created event Y
投票,反之亦然(因为每个用户只能对一个事件投票一次,在这种情况下,event Y
和feed
实际上是相同的事情)
答案 0 :(得分:1)
此数据模型分别处理事件和Feed,但可以记录父Candidate
。组合投票的特殊(?)情况可以在申请层中处理,只允许对候选人WHERE ParentId is NULL
进行投票。