0

我需要在 2 个用户之间实现非常简单的消息传递系统,唯一的要求是让 2 个用户之间的每次对话保持分开。Message(sender_id, recipient_id )我想知道仅使用一种模型来实现目标是否可行且合理。

假设,我想获取所有对话的索引。

  • 加入user.id = recipient_iduser.id = sender_id 获取与特定用户关联的所有消息
  • id对反对的参与者(无论是sender_id还是)排序结果recipient_id以形成消息组 - 聊天框。这是我认为最困难的一步,因为反对用户可能是一次对话中的发送者或接收者。
  • 每个组内的进一步排序结果按创建日期以原始顺序显示消息。每个组表示不同的对话。

我试过Mailboxergem,但对于这种情况来说似乎有点过分了。我还考虑了一种基于引入Conversation与消息具有一对多关系的新实体的不同解决方案。

4

3 回答 3

0

似乎没有这样轻量级的消息传递实现涉及按conversation. 最好的解决方案似乎是从头开始实施它。

于 2013-09-24T17:22:48.250 回答
0

我认为简单的私人消息将解决您的问题。它看起来很简单,看起来与您正在寻找的完全一样。

于 2013-09-20T13:27:38.343 回答
-1

您还应该看看 faye 服务器https://github.com/jamesotron/faye-railshttp://railscasts.com/episodes/260-messaging-with-faye

于 2013-09-20T13:32:13.040 回答