Sha256: 8b9f4d9b13acf1c28764d245f4c497ddd98b30f1a9de34ce246c2684cb9992b5
Contents?: true
Size: 805 Bytes
Versions: 2
Compression:
Stored size: 805 Bytes
Contents
module DataTable module Mongoid module ClassMethods def _find_objects params, fields, search_fields self.where(_where_conditions params[:sSearch], search_fields). order_by(_order_by_fields params, fields). limit(_per_page params). paginate :page => _page(params), :per_page => _per_page(params) end def _where_conditions raw_query, search_fields return if (query = raw_query.gsub(/\//, "")).blank? if search_fields.size == 1 {search_fields.first => /#{query}/i} else {"$or" => search_fields.map {|field| {field => /#{query}/i} }} end end def _order_by_fields params, fields [fields[params[:iSortCol_0].to_i], params[:sSortDir_0]] end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
data_table-0.2.7 | lib/data_table/mongoid.rb |
data_table-0.2.5 | lib/data_table/mongoid.rb |