【问题标题】:How to display status updates from followed users? (MVC)如何显示关注用户的状态更新? (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)来处理这类事情。

标签: database codeigniter many-to-many server-push


【解决方案1】:

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

Followed_Id (BIGINT) | Follower_Id (BIGINT)

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

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

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

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

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

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-02-16
    • 1970-01-01
    • 1970-01-01
    • 2021-09-02
    • 2021-10-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多