NAME
M3::Server::View - Base class for views
DESCRIPTION This class serves as a base class for 'views'. A view is a page in the web-interface which contains a set of data we want to be able to access and search.
INTERFACE
CLASS METHODS
INSTANCE METHODS
- connection
-
Returns the
M3::ServerView
-instance that was used to retrieve the view with. - reload
-
Reloads the data for the view from the server.
- response_time
-
Returns the number of seconds it took to get the reply from the server.
- request_time
-
The date and time in ISO 8601 format when the request was made.
- search ( [QUERY [, OPTIONS ]] )
-
Performs a search of the data and returns a M3::ServerView::ResultSet-instance.
QUERY FORMAT
If QUERY is specified it must be a hash reference. Each key is a name of an attribute in the entry which must exist or the match will fail. The value should either be a scalar which will be compared with the entries value for the attribute using either
==
oreq
depending on whether it's numerical or not. More complex comparisions can be declared by passing an array reference as value where the first element is an comparison operator and the second element the value to compare with. The following comparisions can be defined== != < > <= >=
- Numerical equals, not equals, less than, greater than, less or equal than, greater or equal thaneq ne lt gt le ge
- Same as above but string equivalentslike
- Regular expression comparisionExamples
# Find all entries who's status is down $rs = $view->search({ status => 'down' }); # Find all entries with more than 20 threads and order by threads descending $rs = $view->search({ threads => [ '>' => 20] }, { order_by => 'threads', sort_order => 'desc', }); # Find all entries whose type begins with "Sub:A" $rs = $view->search({ type => [ 'like' => '^Sub:A' ]});
OPTIONS
Specifiying options the the search is possible by passing a hash reference. The following options valid:
- case_sensitive = 1 | 0
-
Sets if comparision should be case_insensitive or not. Defaults to true.
- order_by = attribute
-
Sets the name of the attribute to sort by.
- sort_order = "asc" | "desc"
-
Sets the order of the search. Defaults to "asc".
- sort_as = "text" | "numerical"
-
Sets the if the sort should be considered numerical or not. In numerical mode (1, 55, 7) sortes as (1, 7, 55) while in text mode it sorts as (1, 55, 7).