Class::DBI::Search::Basic - phpMan

Command: man perldoc info search(apropos)  


Sections
NAME SYNOPSIS DESCRIPTION METHODS SUBCLASSING
NAME
    Class::DBI::Search::Basic - Simple Class::DBI search

SYNOPSIS
            my $searcher = Class::DBI::Search::Basic->new(
                    $cdbi_class, @search_args
            );

            my @results = $searcher->run_search;

            # Over in your Class::DBI subclass:

            __PACKAGE__->add_searcher(
                    search  => "Class::DBI::Search::Basic",
              isearch => "Class::DBI::Search::Plugin::CaseInsensitive",
            );

DESCRIPTION
    This is the start of a pluggable Search infrastructure for Class::DBI.

    At the minute Class::DBI::Search::Basic doubles up as both the default
    search within Class::DBI as well as the search base class. We will
    probably need to tease this apart more later and create an abstract base
    class for search plugins.

METHODS
  new
            my $searcher = Class::DBI::Search::Basic->new(
                    $cdbi_class, @search_args
            );

    A Searcher is created with the class to which the results will belong,
    and the arguments passed to the search call by the user.

  opt
            if (my $order = $self->opt('order_by')) { ... }

    The arguments passed to search may contain an options hash. This will
    return the value of a given option.

  run_search
            my @results = $searcher->run_search;
            my $iterator = $searcher->run_search;

    Actually run the search.

SUBCLASSING
  sql / bind / fragment
    The actual mechanics of generating the SQL and executing it split up
    into a variety of methods for you to override.

    run_search() is implemented as:

      return $cdbi->sth_to_objects($self->sql, $self->bind);

    Where sql() is

      $cdbi->sql_Retrieve($self->fragment);

    There are also a variety of private methods underneath this that could
    be overridden in a pinch, but if you need to do this I'd rather you let
    me know so that I can make them public, or at least so that I don't
    remove them from under your feet.


Generated by phpMan Author: Che Dong On Apache Under GNU General Public License - MarkDown Format
2026-05-23 05:17 @216.73.217.24 CrawledBy Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)
Valid XHTML 1.0 TransitionalValid CSS!

^_back to top