我正在尝试创建一个包含Twitter数据+我的应用程序的流,但我无法对它们进行排序,因为它们的时间戳以不同的方式格式化。这是我的代码:
answers = Answer.find(:all, :conditions => {:user_id => @user_id }, :limit => 20)
tweets = Twitter::Search.new(params[:username]).to_a
@feed = (answers + tweets).sort_by(&:created_at)
these are the formats on time:
<#Hashie::Mash created_at="Tue, 22 Jun 2010 04:41:23 +0000"...
<Answer id:... created_at: "2010-06-15 02:13:40"
非常感谢任何帮助。
答案 0 :(得分:2)
我不知道这是不是最好的方法,但试试这个:
@feed = (answers + tweets).sort_by{ |x| DateTime.parse("#{x.created_at}") }
修改强>
反向:
@feed = (answers + tweets).sort{ |x, y| DateTime.parse("#{y.created_at}") <=> DateTime.parse("#{x.created_at}") }