通过生日字段获得年龄超过18岁的用户的范围(Rails 3.2)

时间:2017-03-30 19:29:27

标签: ruby-on-rails-3 scope

我需要编写范围,以帮助我获得年龄将在哪里的用户> 18年,但我没有数据库中的年龄字段。 我的解决方案不起作用=(

 1. scope :adult, -> { where('Time.now.utc.to_date.year - birthday.to_date.year >= 18') }

 2. scope :adults, -> { where('birthday >= ?', age) }

    def age
      Date.today - 18.years
    end

1 个答案:

答案 0 :(得分:1)

试试这个

scope :adults, -> { where('birthday >= ?', 18.years.from_now) }