2013-10-14 55 views
1

我在这里看了一下,但似乎无法找到我正在寻找的答案。如何阻止用户多次按下按钮

我正在创建一种社交网络,它与Twitter系统具有类似的功能,用户1可以跟随用户2。

现在我碰到的问题是,如果我有一个用户,谁是一个令人讨厌的角色,即认为它的乐趣,保持按下用户的配置文件后续/取消关注按钮,导致最终用户接收大量的电子邮件说“这个用户跟着你”。很明显,我不希望发生这种情况。我唯一的想法是,当user1跟随user2时,该行被插入到数据库中。然后,如果user1想取消关注user2,该行不会从表中删除,但只是有一个字段'unfollowed'将被设置为true?那么,如果将来用户1想要再次关注用户2,我将检查'取消关注'是否设置为true,如果超过特定时间范围,则不会发送其他电子邮件或发送电子邮件。

道歉,如果我只是混淆了你所有的地狱。但是有没有人对这个问题有更聪明的想法?

回答

1

我建议类似于你提出的解决方案的东西(跟踪所有如下而不是删除),但也改变措辞,以便用户可以选择接收电子邮件时,“用户开始跟着他们“。

+0

感谢您的建议!我喜欢让用户选择是否收到通知的选择功能。这是我的待办事项清单! –

2

最简单的答案是在点击按钮时禁用按钮。将阻止用户再次点击它。

+1

您可以查看连接两个用户的连接表行中的时间戳,并且如果它在某个时间窗内,则忽略该请求。此外,当他们停止跟踪时,不要立即销毁联接记录 - 只需将其标记为非活动状态即可。如果你的歹徒试图再次追踪,你将能够发现他之前在这里。 – Daiku

0

你回答了你自己的问题。设置一个标志来指示这个user1是否已经跟随/取消关注user2。如果标志为真,请不要发送电子邮件,如果标志为假,请发送电子邮件。

+0

感谢您的反馈。我猜想我提出的解决方案正在开展工作,只是想确保我没有错过任何东西,或者是否有更好的方法。 –