如何获得has_many关系的混合哈希值

时间:2016-08-19 13:55:45

标签: ruby-on-rails ruby-on-rails-4 activerecord

用户表has_many帖子,种子&领域

我正在尝试将这些全部放在同一个数组中,这样我就可以按照它们创建日期的顺序遍历它们。

我见过.reflect_on_association似乎这样做..但是我有更多的has_many关联,我不想在数组中。

有关最佳方法的任何想法吗?我试图避免将它们全部分开,如:

posts = user.posts
seeds = user.seeds
areas = user.areas

Hash... posts, seeds, areas

我可以这样做:

posts_seeds_areas = user.reflect_on_association(:has_many, {Post, Seed, Area})

我建议的可能吗?

1 个答案:

答案 0 :(得分:1)

reflect_on_association用于检查类,而不是用于实例。

为了达到你想要的目的,我会做到这一点

posts_seeds_areas = (users.posts+users.seeds+users.areas).sort_by(&:created_at)