Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ruby-on-rails-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 按日期将两个@变量一起排序_Ruby On Rails_Ruby On Rails 3 - Fatal编程技术网

Ruby on rails 按日期将两个@变量一起排序

Ruby on rails 按日期将两个@变量一起排序,ruby-on-rails,ruby-on-rails-3,Ruby On Rails,Ruby On Rails 3,我有一个带有两个表的消息传递系统:Message和MessageCopy,每次发送消息时,它都会为每个收件人生成一个消息副本(包含读取、保存、删除等信息) 我想为我的用户显示一个包含已发送和已接收消息的“对话”,我想将已发送和已接收的消息拼接在一起,按created\u在处排序 这是我目前分开的两位亲戚 @sentmessages = Message.where("author_id = ? AND project_id = ?", current_user.id, @project.id).o

我有一个带有两个表的消息传递系统:Message和MessageCopy,每次发送消息时,它都会为每个收件人生成一个消息副本(包含读取、保存、删除等信息)

我想为我的用户显示一个包含已发送和已接收消息的“对话”,我想将已发送和已接收的消息拼接在一起,按
created\u在
处排序

这是我目前分开的两位亲戚

@sentmessages = Message.where("author_id = ? AND project_id = ?", current_user.id, @project.id).order("created_at DESC")
@receivedmessages = MessageCopy.where("recipient_id = ? AND project_id = ?", current_user.id, @project.id).order("created_at DESC")

如果可能的话,我想使用Rails而不是MySQL将它们组合成一个关系。谢谢

我希望我理解正确-您需要一个单独的变量来存储这些按日期排序的对象


(@sentmessages+@receivedmessages).排序依据(&:created_at.).反向

Hi@Vise-很抱歉没有激活此操作。我对
(@sentmessages+@receivedmessages)
的问题是它们是不同的型号。一个是实际邮件,另一个是收到的邮件副本。我试着组织一个“对话”,活动是按日期组织的。