I made the following changes to enable the use of Ransack's extensive predicates expressions, in addition to ransackable_scope.
Please review and let me know if any further changes are needed.
Changes
Add AdministrateRansack.ransack? helper to check if a field name with predicates is valid.
Fix the labels to enable automatic translation of field names with predicates in i18n.
Breaking changes
Drop admin_scope option
For associations, admin_scope is no longer necessary as updated to use Field.associated_resource to get the collection.
If we want to do something similar, we can do it with Field::BelongsTo like this:
I made the following changes to enable the use of Ransack's extensive predicates expressions, in addition to ransackable_scope. Please review and let me know if any further changes are needed.
Changes
AdministrateRansack.ransack?
helper to check if a field name with predicates is valid.Breaking changes
admin_scope
optionadmin_scope
is no longer necessary as updated to useField.associated_resource
to get the collection.Field::BelongsTo.with_options(scope: ->{ Post.published })
Field::HasMany
does not have ascope
option, it cannot be done in the same way, but it can be achieved using theField::ScopedHasMany
plugin.admin_label
optiondisplay_resource
as the label to match the title or heading of each admin pages.