SPOPS::Key::Random - Creates a random alphanumeric code for the ID field


 # In your SPOPS configuration

 $spops  = {
   'myspops' => {
       'isa'      => [ qw/ SPOPS::Key::Random  SPOPS::DBI / ],
       'id_width' => 12,


Very, very simple. We just use the generate_random_code() method from SPOPS::Utility to generate an n character code. The width of the code is determined by the configuration key id_width in your object class, or we use a default width (eight characters).


Getting a 'random' value

If you are using this under mod_perl, you might have the problem of colliding ID fields. This seems to happen because the httpd children all have the same random seed, since they are all forked off from the same parent.

The solution is to put a 'srand()' in the PerlChildInitHandler, although mod_perl versions greater than 1.25 are reported to take care of this for you.


Nothing known.


Copyright (c) 2001-2004, inc.. All rights reserved.

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


Chris Winters <>