All pastes #55816 Raw Edit

Stuff

public text v1 · immutable
#55816 ·published 2006-05-14 15:52 UTC
rendered paste body
#!/usr/bin/perl
use strict;
use warnings;

  use address_book::Schema;

  my $schema1 = "address_book::Schema";

  print "Test to get array or tablenames  \n";
  my @tables = $schema1->loader->tables;
  print "\nTables: " . @tables . "\n" ;
  foreach my $table (@tables) { print "$table\n"; }


  print "\n\nTest to get hash{tablename} = moniker \n";
  my $monikers = $schema1->loader->monikers;
  print $monikers->{address} . "\n";

  # Get a hashref of table_name => 'My::Schema::TableName'
  print "\n\nTest to get hash{tablename} = class \n";
  my $classes = $schema1->loader->classes;
  print $classes->{address} , "\n";

  # Use the schema as per normal for DBIx::Class::Schema
  print "\n\nTest select all \n";
  my $rs = $schema1->resultset($monikers->{address});

    while (my $address = $rs->next) {
        my $name = $address->first ;
        $ name .= " " . $address->middle if $address->middle;
        $ name .= " " . $address->last if $address->last;
      print "$name\n";
    }
    print "\n";


  print "\n\nTest record search \n";
  $rs = $schema1->resultset($monikers->{address})->search({first => 'Thomas'});
        my $rec = $rs->first;
        my $name = $rec->first ;
        $ name .= " " . $rec->middle if $rec->middle;
        $ name .= " " . $rec->last if $rec->last;
      print "$name\n";






#======================================
# OUTPUT 
#======================================
[frankg@romeo address_book]$ perl -Ilib t/mytest.pl
### START DBIx::Class::Schema::Loader dump ###
# Initializing table "address" as "address_book::Schema::Address"
address_book::Schema::Address->table('address');
address_book::Schema::Address->add_columns('id', 'first', 'middle', 'last', 'address1', 'address2', 'address3', 'city', 'state', 'zip')
address_book::Schema::Address->set_primary_key('id')
### END DBIx::Class::Schema::Loader dump ###
Test to get array or tablenames

Tables: 1
address


Test to get hash{tablename} = moniker
Address


Test to get hash{tablename} = class
address_book::Schema::Address


Test select all
Frank F Gutierrez
George H Hernandez
Sam W Chu
Thomas G Menow



Test record search
Thomas G Menow