Mongoid 4:喜欢查询整数列

时间:2014-09-09 08:17:49

标签: ruby-on-rails mongodb mongoid mongoid4

我需要使用 INTEGER COLUMN 进行mongoid搜索,例如查询。例如:

SELECT * FROM users WHERE mobile LIKE '%9980%';

这是我的模特:

class User
  include Mongoid::Document
  include Mongoid::Timestamps

  ##
  # Columns
  field :name,                      type: String
  field :mobile,                    type: Integer
end

我已经尝试过以下示例。但没有运气:(

User.where(:$where => "/^#{params[:mobile]}/")
User.any_of({mobile: /.*#{params[:mobile]}.*/i})
User.where(mobile: /8801/))

如何用mongoid编写它?

3 个答案:

答案 0 :(得分:3)

试试这个

User.where(mobile: /.*#{params[:mobile]}.*/i)

答案 1 :(得分:1)

<强> SOLUTION:

users = User.where(:$where => "/^#{params[:mobile]}/.test(this.mobile)")

答案 2 :(得分:0)

User.where(:mobile => /\d*{params[:mobile]}\d*/)

类似Mongo中的函数只是whereregexp

的参数