您的位置:首页 > 编程语言 > Ruby

ruby 遍历mongo数据

2015-07-29 11:51 387 查看
next_played_videos = @channel.videos.active.where(:begin_time.gt => begin_time).asc(:begin_time)
next_played_videos.each do |video|
video.begin_time = begin_time
video.end_time = video.begin_time.to_i + video.duration
begin_time = video.end_time
video.save
end


这里使用 each 操作遍历效率比较低,可以使用 Mongoid 的
inc
方法批量对指定的字段值进行增减,文档见 http://mongoid.org/en/mongoid/docs/persistence.html。

next_played_videos = @channel.videos.active.where(:begin_time.gt => begin_time).asc(:begin_time)
next_played_videos.inc(begin_at: -@video.duration, end_at: -@video.duration)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: