NAME
    DBIx::Class::DynamicDefault - Automatically set and update fields

SYNOPSIS
      package My::Schema::SomeTable;

      __PACKAGE__->load_components(qw/DynamicDefault ... Core/);

      __PACKAGE__->add_columns(
              quux          => { data_type => 'integer' },
              quux_plus_one => { data_type => 'integer',
                                 dynamic_default_on_create => \&quux_plus_one_default,
                                 dynamic_default_on_update => 'quux_plus_one_default', },
              last_changed  => { data_type => 'integer',
                                 dynamic_default_on_create => 'now',
                                 dynamic_default_on_update => 'now, },
      );

      sub quux_plus_one_default {
          my ($self) = @_;
          return $self->quux + 1;
      }

      sub now {
          return DateTime->now->epoch;
      }

    Now, any update or create actions will set the specified columns to the
    value returned by the callback you specified as a method name or code
    reference.

DESCRIPTION
    Automatically set and update fields with values calculated at runtime.

AUTHOR
    Florian Ragwitz <rafl@debian.org>

LICENSE
    This software is copyright (c) 2008 by Florian Ragwitz.

    This is free software; you can redistribute it and/or modify it under
    the same terms as perl itself.