从一个Rails的ActiveRecord的查询不同的元素 [英] Get distinct elements from a Rails ActiveRecord query

查看:189
本文介绍了从一个Rails的ActiveRecord的查询不同的元素的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有Rails中的查询是这样的:

  @地址= People.select(FIRST_NAME,国家)。其中(如first_name ='鲍勃')
 

有没有一种方法,我可以遍历地址,拉出不同的状态,让我知道其中规定一个叫鲍勃的生活?

我努力避免:

  @states = []
@ address.each.do |加入|
  如果!@states.contains?(add.state)
    @ states.push添加
 

这似乎只是不好的形式。

解决方案

  @states = People.where(如first_name:'鲍勃')。uniq.pluck(:状态)
 

I've got a query in Rails like this:

@addresses=People.select("first_name, state").where("first_name = 'Bob'")

Is there a way I can iterate over addresses and pull out the distinct states, so that I know in which states someone named bob lives?

I'm trying to avoid:

@states = []
@address.each.do |add|
  if !@states.contains?(add.state)
    @states.push add

That just seems like bad form.

解决方案

@states = People.where(first_name: 'Bob').uniq.pluck(:state)

这篇关于从一个Rails的ActiveRecord的查询不同的元素的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆