-*- mode: outline; outline-regexp: "\\s *\\*+" -*- Jifty::Action::Record::Search should take arguments and return a FooCollection as the q{search} field of its q{content}. It will generate arguments for each field, according to the SQL type of the field: * text * I, I_not * Do substring searching on the given field * This is case sensitive. * I * ? Does exact matching ? * time, date, or datetime * T_after, I_before * T for exact matching? * int * I * Exact matching * I * I * Less than/greater than * I * I * These are perhaps superfluous, but could be convenient. * (I want auto-loaded arguments ...) * boolean * I * Can be true, false, or undefined * refers_to an object * I * I * Accept ids * ? Generate valid_values for this ? * refers_to a collection * Do nothing? * I_contains ? * I_lacks ? ******* * Validators and canonicalizers * Never use validators * Use canonicalizers on any "exact match" fields * What's the right behaviour on substring/comparison match? * valid_values * valid_values should remain valid_values for any exact match fields, * become available_values otherwise