2015-05-09 79 views
0

我有两套活动记录合并两个活动记录关系为活动记录关系

users_by_type = User.where(type: 'customer') 

的这个类是:users_by_type.class => Active Record的关系这个

users_by_tag = User.tagged_with('admin') 

类是:users_by_tag => ActiveRecord的关系

当我结合这两组像:

users = users_by_type + users_by_tag 
or 
users = users_by_type.merge(users_by_tag) 

其给出结果作为数组,但我希望它作为活动记录关系。用户

类是:数组

因为在阵列中,我无法使用where子句和组子句。

如何组合两组以便我可以使用where和group子句?

+0

添加User.tagged_with的定义 – max

+1

这是gem的方法act_as_taggable – Dheer

回答

2

你需要什么是活动记录的#OR方法,不幸的是尚未实现,但它在github上已经合并,将与轨公布5

下面是关于当其要的pull requestdhh's comment发布

在平均时间你要么必须使用AREL的选项,就像mentioned here

东西,或有拔毛两种查询的ID,然后创建具有这些ID的第三查询的愚蠢糟糕的方式。

+0

是的,我需要作为#OR方法进行活动记录,感谢您的快速响应,它对我有帮助。 – Dheer