我们说我有一个图像模型和一个视频模型如何在日期索引中显示它们
答案 0 :(得分:1)
我要去火炬。 :)塞尔吉奥的意思是这样的:
class Media < ActiveRecord::Base
belongs_to :image
belongs_to :video
end
然后您可以轻松地对其进行排序/过滤/分页
@media = Media.where('created_at > ?', 2.days.ago).order(:id)
添加新图像/视频时,不要忘记创建相应的媒体记录
image = ...
Media.create(image: image)
答案 1 :(得分:0)
您可以使用UNION
sql函数实现此目的:
ActiveRecord::Base.connection.execute('
(
SELECT images.id, images.created_at, 'Image' as type
FROM images
) UNION ALL (
SELECT videos.id, videos.created_at, 'Video' as type
FROM videos
)
ORDER BY created_at
')
如果您需要添加字段,只需添加它们(但对于两个选择)