database - 在数据库中实现“添加到收藏夹”
问题描述
我有一个关于数据库/系统设计的问题。我们有一张桌子和user
一张user_id
桌子school
。school_id
我们希望实现一项功能,以便用户可以将学校添加到他们的“收藏夹列表”中。user_id
我已经创建了第三个表,其中包含和之间的关系school_id
。现在我有以下两个问题:
当用户从“我的收藏”列表中删除一所学校时,我应该将其删除还是保留在数据库中但将其标记为“已删除”?我想保留它,但随着时间的推移,它可能会在表中留下大量垃圾数据。
前端设计类似于 twitter 上的喜欢/不喜欢按钮。用户可以一键收藏/取消收藏一所学校。有没有什么好的方法可以防止机器人通过单击按钮不断地访问数据库?
提前致谢!
解决方案
- 答案取决于您的应用程序的逻辑。两个建议都可以。
如果您将来某个时候需要这些数据,或者如果您正在保存用户操作的历史记录,那么您可以将其标记为“已删除”,否则您可以立即将其删除。(另一种方法是将其标记为临时删除,并定期进行清理表的作业) - 我对这种威胁没有足够的经验,但一个简单的解决方案是限制每个用户每秒的 API 调用
推荐阅读
- python - 如何根据行值重新构建列?
- json - 未反映在 React App 的构建版本中本地 JSON 文件中所做的更改
- python - RuntimeError:预期的标量类型 Double 但发现 Float
- bash - 如何编写 bash for 循环来创建模板
- sql-server - 备份失败并出现操作系统错误 1265
- ibm-doors - 如何导出 DOORS 模块的所有属性
- java - 如何测试使用 PDFbox 生成的 PDF
- javascript - 为什么我的敌人在我的背景/瓷砖地图后面?Phaser.js
- kibana - DSL,其中 field1 等于 foo,field2 等于 bar 或 bar2
- python - 如何解决问题“错误:不支持的区域设置”