如何显示关注用户的状态更新? (MVC)

Posted

技术标签:

【中文标题】如何显示关注用户的状态更新? (MVC)【英文标题】:How to display status updates from followed users? (MVC) 【发布时间】:2011-10-02 06:24:25 【问题描述】:

在仪表板上显示来自被关注的用户(例如 twitter)的状态更新在诸如 codeigniter 之类的 MVC 框架上的好方法是什么。

我有一个表格,只是用于状态更新,我在其中记录了 ID、user_id 和消息。

我是否应该通过在用户选择关注某人时记录用户 ID 创建一个数据库表来记录谁在关注谁?

如果是这样,我将如何查询数据库以请求仅为关注的用户更新状态?

【问题讨论】:

嗯,是的,必须有一种方法可以知道谁在关注谁。因此,您必须有一个连接表(例如:followers_users') that stores the ID of the user and those following that user. Then, you'd have to write a join` 查询。您可能会考虑使用类似 ORM 的学说(doctrine-project.org)或 datamapper orm(datamapper.wanwizard.eu)来处理这类事情。 【参考方案1】:

这是典型的多对多关系,因此您需要一个表来存储此关系。该表将仅包含两个用户 ID,一个用于关注者,一个用于被关注者。例如:

Followed_Id (BIGINT) | Follower_Id (BIGINT)

这些列都会有一个外键,引用用户表的 ID 列。

有一些用于 CI 的 ORM 工具,比如他评论中的 swatkins 笔记。

对于状态更新的查询,基本上有两种选择:

轮询,您的客户端会定期轮询后端以获取新更新 推送,您的后端会将新的更新通知您的客户

第二个选项被认为是解决此类问题的更好方法,因为:

可以异步实现 避免在没有新数据的情况下对后端进行不必要的调用

【讨论】:

以上是关于如何显示关注用户的状态更新? (MVC)的主要内容,如果未能解决你的问题,请参考以下文章

什么是MVC设计模式,如何使用MVC

如何在 redux 状态更新时自动刷新组件

ReactJS如何更新数组中对象的状态

React:如何使用用户当前位置的更新状态而不是初始状态

如何使用 MS 数据库(ASP.NET Core MVC)通过表格显示信息?

如何使用 Rails 上的按钮更新所有用户的数据?