- Remove dead code
- Implementing
searchable: falsetests - Improve objects shape
- Fix Rubocop offenses
- Make gem smaller
- Drop support of Rails 6.0
- Drop support of Rails 6.1
- Drop support of Rails 7.0
- Drop support of Ruby 2.7
- Drop support of Ruby 3.0
- Add support for Rails 7.2
- Add support for Rails 8.0
- Add support for Ruby 3.4
- 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)
- Drop support of Rails 5.2
- Add support for Rails 7.1
- Add support for Ruby 3.2
- 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.0
- 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.configis 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
sanitizeprivate 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_recordby a class :AjaxDatatablesRails::ActiveRecordFix #228
To mitigate this 2 changes see the migration doc.
- Add: Add
:string_eqcondition 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_datasmethod asadditional_dataPR #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
:oracleas supporteddb_adapter. Thanks to lutechspa for this contribution.
- Changes to the
sortable_columnsandsearchable_columnssyntax as it required us to do unnecessary guessing. New syntax isModelName.column_nameorNamespace::ModelName.column_name. Old syntax oftable_name.column_nameis 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
READMEdocumentation about theoptionshash. Thanks to Jonathan E Hogue for pointing out that previous documentation was confusing and didn't address its usage properly. - Edits to
READMEdocumentation on complex model queries inside theget_raw_recordsmethod. A round of applause to Zoltan Paulovics for contributing this awesome piece of documentation. 😄 - Adds typecast step to
search_conditionmethod, so now we support having non-text columns inside thesearchable_columnsarray. - 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,:sqlite3or: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
legacybranch 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.xversion of this gem.
- Fixes
whereclause being built even when search term is an empty string. Thanks to e-fisher for spotting and fixing this.
- Fixes problem on
searchable_columnswhere 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::SimplePaginatoror replace it withAjaxDatatablesRails::Extensions::KaminariorAjaxDatatablesRails::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
optionshash to provide more flexibility. See README for examples. - Sets generator inside the
Railsnamespace. To generate anAjaxDatatablesRailschild class, just execute the generator like this:$ rails generate datatable NAME.
First release!