Search Matchers
Search Matchers
List of all possible predicates
Predicate | Description | Notes |
---|---|---|
*_eq | equal | |
*_not_eq | not equal | |
*_matches | matches with LIKE | e.g. q[email_matches]=%@gmail.com |
*_does_not_match | does not match with LIKE | |
*_matches_any | Matches any | |
*_matches_all | Matches all | |
*_does_not_match_any | Does not match any | |
*_does_not_match_all | Does not match all | |
*_lt | less than | |
*_lteq | less than or equal | |
*_gt | greater than | |
*_gteq | greater than or equal | |
*_present | not null and not empty | Only compatible with string columns. Example: q[name_present]=1 (SQL: col is not null AND col != '' ) |
*_blank | is null or empty. | (SQL: col is null OR col = '' ) |
*_null | is null | |
*_not_null | is not null | |
*_in | match any values in array | e.g. q[name_in][]=Alice&q[name_in][]=Bob |
*_not_in | match none of values in array | |
*_lt_any | Less than any | SQL: col < value1 OR col < value2 |
*_lteq_any | Less than or equal to any | |
*_gt_any | Greater than any | |
*_gteq_any | Greater than or equal to any | |
*_lt_all | Less than all | SQL: col < value1 AND col < value2 |
*_lteq_all | Less than or equal to all | |
*_gt_all | Greater than all | |
*_gteq_all | Greater than or equal to all | |
*_not_eq_all | none of values in a set | |
*_start | Starts with | SQL: col LIKE 'value%' |
*_not_start | Does not start with | |
*_start_any | Starts with any of | |
*_start_all | Starts with all of | |
*_not_start_any | Does not start with any of | |
*_not_start_all | Does not start with all of | |
*_end | Ends with | SQL: col LIKE '%value' |
*_not_end | Does not end with | |
*_end_any | Ends with any of | |
*_end_all | Ends with all of | |
*_not_end_any | ||
*_not_end_all | ||
*_cont | Contains value | uses LIKE |
*_cont_any | Contains any of | |
*_cont_all | Contains all of | |
*_not_cont | Does not contain | |
*_not_cont_any | Does not contain any of | |
*_not_cont_all | Does not contain all of | |
*_i_cont | Contains value with case insensitive | uses ILIKE |
*_i_cont_any | Contains any of values with case insensitive | |
*_i_cont_all | Contains all of values with case insensitive | |
*_not_i_cont | Does not contain with case insensitive | |
*_not_i_cont_any | Does not contain any of values with case insensitive | |
*_not_i_cont_all | Does not contain all of values with case insensitive | |
*_true | is true | |
*_false | is false |
See full list: https://github.com/activerecord-hackery/ransack/blob/main/lib/ransack/locale/en.yml#L16