Sha256: b07e8cd4cc095dc0ffb6f1779ed58cc1b573ff82f8a7925423bfe59f365e9a01
Contents?: true
Size: 737 Bytes
Versions: 2
Compression:
Stored size: 737 Bytes
Contents
module DataTable module ActiveRecord module ClassMethods def _find_objects params, fields, search_fields self.where(_where_conditions params[:sSearch], search_fields). order(_order_fields params, fields). paginate :page => _page(params), :per_page => _per_page(params) end def _where_conditions query, search_fields return if query.blank? [search_fields.map {|field| ["UPPER(#{field}) LIKE ?"] }.join(" OR "), *(["%#{query.upcase}%"] * search_fields.size)] end def _order_fields params, fields direction = params[:sSortDir_0] == "asc" ? "ASC" : "DESC" %{#{fields[params[:iSortCol_0].to_i]} #{direction}} end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
data_table-0.1.8 | lib/data_table/active_record.rb |
data_table-0.1.7 | lib/data_table/active_record.rb |