$searchableFields : array
Provides the base functionality for lookup classes. All classes that extend this class must at a minimum set `$this->Model`, `$this->fields`, `$this->searchableFields`. To extend the functionality of the fetch method override `$this->preFetch()` and `$this->postFetch`.
$fields : array
__call(string $method, mixed $args) : mixed
Magic call method for calling methods that don't exist but are used to set key/value to push onto the call stack. The call stack is used to determine the where condition of how to look up results.
The method that doesn't exist on the class.
The arguements passed to the method.
fetch() : integer|array
Perform the lookup. Calling `$this->preFetch()` to set up any pre conditions (ie joins, where etc). If the total number of results of the lookup are being requested ie `total()` was called, the total will be returned. If not the fields to be selected will be set from `$this->select` on the model and the result of calling `$this->postFetch()` will be returned.
Either the total results of the lookup as an integer, or an array of results provided by