DBIx::Class::Manual::ResultClass(3)

NAME
DBIx::Class::Manual::ResultClass - Representing a single result (row) from a DB query

SYNOPSIS
  package My::Schema::Result::Track;

  use parent 'DBIx::Class::Core';

  __PACKAGE__->table('tracks');

  __PACKAGE__->add_columns({
    id => {
      data_type => 'int',
      is_auto_increment => 1,
    },
    cd_id => {
      data_type => 'int',
    },
    title => {
      data_type => 'varchar',
      size => 50,
    },
    rank => {
      data_type => 'int',
      is_nullable => 1,
    },
  });

  __PACKAGE__->set_primary_key('id');
  __PACKAGE__->add_unique_constraint(u_title => ['cd_id', 'title']);

DESCRIPTION
In DBIx::Class, a user normally receives query results as instances of a certain "Result Class", depending on the main query source. Besides being the primary "toolset" for interaction with your data, a "Result Class" also serves to establish source metadata, which is then used during initialization of your DBIx::Class::Schema instance.

Because of these multiple seemingly conflicting purposes, it is hard to aggregate the documentation of various methods available on a typical "Result Class". This document serves as a general overview of "Result Class" declaration best practices, and offers an index of the available methods (and the Components/Roles which provide them).

INHERITED METHODS

DBIx::Class::Relationship
    has_many, has_one, might_have, belongs_to, many_to_many

DBIx::Class::Relationship::Base
    register_relationship, count_related, create_related, delete_related, find_or_create_related, find_or_new_related, find_related, new_related, related_resultset, search_related, search_related_rs, set_from_related, update_from_related, update_or_create_related

DBIx::Class::InflateColumn
    get_inflated_column, inflate_column, set_inflated_column, store_inflated_column

DBIx::Class::PK
    ID, id, ident_condition

DBIx::Class::Row
    delete, update, copy, discard_changes, get_column, get_columns, get_dirty_columns, get_from_storage, get_inflated_columns, has_column_loaded, in_storage, inflate_result, insert, insert_or_update, is_changed, is_column_changed, make_column_dirty, new, register_column, result_source, set_column, set_columns, set_inflated_columns, store_column, throw_exception, update_or_insert

DBIx::Class::ResultSourceProxy::Table
    table, table_class

DBIx::Class::ResultSource
    add_column, add_columns, add_relationship, add_unique_constraint, add_unique_constraints, column_info, column_info_from_storage, columns, columns_info, has_column, has_relationship, primary_columns, relationship_info, relationships, remove_column, remove_columns, result_class, resultset_attributes, resultset_class, sequence, set_primary_key, source_info, source_name, unique_constraint_columns, unique_constraint_names, unique_constraints

FURTHER QUESTIONS?
Check the list of additional DBIC resources.

COPYRIGHT AND LICENSE
This module is free software copyright by the DBIx::Class (DBIC) authors. You can redistribute it and/or modify it under the same terms as the DBIx::Class library.