获取消息接收者



我可以获得消息的最后一个 sender

对话。receipts_for(current_user).last.message.sender.name

,但无法获得同一消息的收件人。我想显示gmail-esk:

发件人名称,收件人名称|主题|日期

有什么想法?

有一个带有邮箱的participants方法,但我相信没有收件人。相反,我创建了这个:

recipient = conversation.participants.find { |p| p != current_user }

请注意,current_user来自设计。

我在助手文件中创建了此方法:

  def participant_names(conversation)
    conversation.receipts.reject { |p| p.receiver == current_user }.collect {|p| p.receiver.name }.uniq.join(" ,")
  end

这是在从对话对象中删除current_user,然后创建一个新数组,其中包含(在这种情况下为用户)该对象的名称。" .uniq"方法可确保每个用户的名称仅显示一次(在这种情况下,有很多来回对话)。最后,逗号将它们分开。

最新更新