NAME DBIx::Class::UUIDColumns - Implicit uuid columns SYNOPSIS package Artist; __PACKAGE__->load_components(qw/UUIDColumns Core DB/); __PACKAGE__->uuid_columns( 'artist_id' ); DESCRIPTION This DBIx::Class component resembles the behaviour of Class::DBI::UUID, to make some columns implicitly created as uuid. When loaded, "UUIDColumns" will search for a suitable uuid generation module from the following list of supported modules: Data::UUID APR::UUID* UUID Win32::Guidgen Win32API::GUID If no supporting module can be found, an exception will be thrown. *APR::UUID will not be loaded under OpenBSD due to an as yet unidentified XS issue. If you would like to use a specific module, you can set "uuid_class": __PACKAGE__->uuid_class('::Data::UUID'); __PACKAGE__->uuid_class('MyUUIDGenerator'); Note that the component needs to be loaded before Core. METHODS uuid_columns(@columns) Takes a list of columns to be filled with uuids during insert. __PACKAGE__->uuid_columns('id'); uuid_class($classname) Takes the name of a UUIDMaker subclass to be used for uuid value generation. This can be a fully qualified class name, or a shortcut name starting with :: that matches one of the available DBIx::Class::UUIDMaker subclasses: __PACKAGE__->uuid_class('CustomUUIDGenerator'); # loads CustomeUUIDGenerator __PACKAGE->uuid_class('::Data::UUID'); # loads DBIx::Class::UUIDMaker::Data::UUID; Note that "uuid_class" chacks to see that the specified class isa DBIx::Class::UUIDMaker subbclass and throws and exception if it isn't. uuid_maker Returns the current UUIDMaker instance for the given module. my $uuid = __PACKAGE__->uuid_maker->as_string; SEE ALSO DBIx::Class::UUIDMaker AUTHORS Chia-liang Kao Chris Laco LICENSE You may distribute this code under the same terms as Perl itself.