- Implementing
searchable: false
tests
- Drop support of Rails 5.2
- Add support for grouped results (merge: #419)
- Fix server-side out of order ajax responses (merge: #418)
- Add support for postgis adapter (merge: #417)
- Add support for trilogy adapter (merge: #423)
- Add support for Rails 7.1
- Add support for Ruby 3.3
This is the last version to support Rails 6.0.x and Ruby 2.7.x.
- Improve tests
- Add tests on custom_field feature
- Drop support of Ruby 2.5
- Drop support of Ruby 2.6
- Add support of Ruby 3.1
- Add support of Rails 7
- Fix: prevent establishing ActiveRecord connection on startup
- Fix rare case error
uninitialized constant AjaxDatatablesRails::ActiveRecord::Base
(merge: #379)
-
Drop support of Rails 5.0.x and 5.1.x
-
Drop support of Ruby 2.4
-
Add support of Rails 6.1
-
Add support of Ruby 3.0
-
Switch from Travis to Github Actions
-
Improve specs
-
Fix lib loading with JRuby (fixes #371)
-
Raise an error when column's
cond:
setting is unknown -
Make global search and column search work together (merge: #350, fixes: #258)
-
Fix: date_range doesn't support searching by a date greater than today (merge: #351)
-
Fix: undefined method `fetch' for nil:NilClass (fix: #307)
-
Add support for json params (merge: #355)
-
AjaxDatatablesRails.config
is removed with no replacement. The gem is now configless :) -
AjaxDatatablesRails.config.db_adapter=
is removed and is configured per datatable class now. It defaults to Rails DB adapter. (fixes #364) -
AjaxDatatablesRails.config.nulls_last=
is removed and is configured per datatable class now (or by column). It defaults to false.
To mitigate this 3 changes see the migration doc.
- Drop support of Rails 4.x
- Drop support of Ruby 2.3
- Use zeitwerk to load gem files
- Add binstubs to ease development
This is the last version to support Rails 5.0.x, Rails 5.1.x and Ruby 2.4.x.
- Add rudimentary support for Microsoft SQL Server
- Fixes errors when options[param] is nil PR 315 (thanks @allard)
- Improve query performance when nulls_last option is enabled PR 317 (thanks @natebird)
- Add :string_in cond PR 323 (thanks @donnguyen)
- Rename
sanitize
private method PR 326 (thanks @epipheus) - Update documentation
- Test with latest Rails (6.x) and Ruby versions (2.6)
This is the last version to support Rails 4.x and Ruby 2.3.x.
- Breaking change: Remove dependency on view_context Issue #288
- Breaking change: Replace
config.orm = :active_record
by a class :AjaxDatatablesRails::ActiveRecord
Fix #228
To mitigate this 2 changes see the migration doc.
- Add: Add
:string_eq
condition on columns filter Issue #291
Note : This is the last version to support Rails 4.0.x and Rails 4.1.x
- Fix: Restore behavior of #filter method Comment
- Fix: Fix erroneous offset/start behavior PR #264
- Fix: "orderable" option has no effect Issue #245
- Fix: Fix undefined method #and PR #235
- Add: Add "order nulls last" option PR #79
- Change: Rename
additional_datas
method asadditional_data
PR #251 - Change: Added timezone support for daterange PR #261
- Change: Add # frozen_string_literal: true pragma
- Various improvements in internal API
Warning: this version is a major break from v0.3. The core has been rewriten to remove dependency on Kaminari (or WillPaginate).
It also brings a new (more natural) way of defining columns, based on hash definitions (and not arrays) and add some filtering options for column search. Take a look at the README for more infos.
- Adds
:oracle
as supporteddb_adapter
. Thanks to lutechspa for this contribution.
- Changes to the
sortable_columns
andsearchable_columns
syntax as it required us to do unnecessary guessing. New syntax isModelName.column_name
orNamespace::ModelName.column_name
. Old syntax oftable_name.column_name
is still available to use, but prints a deprecation warning. Thanks to M. Saiqul Haq for pointing this. - Adds support to discover from received params if a column should be really considered for sorting purposes. Thanks to Zachariah Clay for this contribution.
- Moves paginator settings to configuration initializer.
- Fix count method to work with select statements under Rails 4.1. Thanks to Jason Mitchell for the contribution.
- Edits to
README
documentation about theoptions
hash. Thanks to Jonathan E Hogue for pointing out that previous documentation was confusing and didn't address its usage properly. - Edits to
README
documentation on complex model queries inside theget_raw_records
method. A round of applause to Zoltan Paulovics for contributing this awesome piece of documentation. 😄 - Adds typecast step to
search_condition
method, so now we support having non-text columns inside thesearchable_columns
array. - Adds support for multi-column sorting and multi-term search. Thanks to Zoltan Paulovics for contributing this feature.
- Adds optional config initializer, so we can have a base to typecast non
text-based columns and perform searches depending on the use of
:mysql2
,:sqlite3
or:pg
. Thanks to M. Saiqul Haq for contributing this feature.
- This version works with jQuery dataTables ver. 1.10 and it's new API syntax.
- Added
legacy
branch to repo. If your project is working with jQuery dataTables ver. 1.9, this is the branch you need to pull, or use the last0.1.x
version of this gem.
- Fixes
where
clause being built even when search term is an empty string. Thanks to e-fisher for spotting and fixing this.
- Fixes problem on
searchable_columns
where the corresponding model is a composite model name, e.g.UserData
,BillingAddress
. Thanks to iruca3 for the fix.
- A fresh start. Sets base class name to:
AjaxDatatablesRails::Base
. - Extracts pagination functions to mixable modules.
- A user would have the option to stick to the base
AjaxDatatablesRails::Extensions::SimplePaginator
or replace it withAjaxDatatablesRails::Extensions::Kaminari
orAjaxDatatablesRails::Extensions::WillPaginate
, depending on what he/she is using to handle record pagination.
- A user would have the option to stick to the base
- Removes dependency to pass in a model name to the generator. This way, the developer has more flexibility to implement whatever datatable feature is required.
- Datatable constructor accepts an optional
options
hash to provide more flexibility. See README for examples. - Sets generator inside the
Rails
namespace. To generate anAjaxDatatablesRails
child class, just execute the generator like this:$ rails generate datatable NAME
.
First release!