---
name: "Jifty::Action::Record::Search"
section: "3pm"
platform: "linux"
package: "libjifty-perl"
version: "1.10518+dfsg-2"
release: "Debian 7 (Wheezy)"
platforms: ["linux"]
url: "https://new.carta.tech/Jifty::Action::Record::Search"
---

# Jifty::Action::Record::Search(3pm)

Automagic search action

## NAME

Jifty::Action::Record::Search - Automagic search action

## DESCRIPTION

The class is a base class for Jifty::Actions that serve to provide an interface to general searches through Jifty::Record objects. To use it, subclass it and override the `"record_class"` method to return the fully qualified name of the model to do searches over.

## METHODS

### arguments

Remove validators from arguments, as well as \`\`mandatory'' restrictions. Remove any arguments that render as password fields, or refer to collections.

Generate additional search arguments for each field based on the following criteria:

- "text", "char" or "varchar" fields

  Create `"field"`\_contains and `"field"`\_lacks arguments

- "date", or "timestamp" fields

  Create `"field"`\_before, `"field"`\_after, `"field"`\_since and `"field"`\_until arguments.

- "integer", "float", "double", "decimal" or "numeric" fields

  Generate `"field"`\_lt, `"field"`\_gt, `"field"`\_le and `"field"`\_ge arguments, as well as a `"field"`\_dwim field that accepts a prefixed comparison operator in the search value, such as `">100"` and `"!100"`.

### take\_action

Return a collection with the result of the search specified by the given arguments.

We interpret a `"undef"` argument as SQL `"NULL"`, and ignore empty or non-present arguments.

## SEE ALSO

Jifty::Action::Record, Jifty::Collection

## LICENSE

Jifty is Copyright 2005-2010 Best Practical Solutions, LLC. Jifty is distributed under the same terms as Perl itself.
