On Mon, Jun 18, 2007 at 11:03:53AM -0400, Christopher H. Laco wrote:
> >> On Sat, 16 Jun 2007, Richard Robinson wrote:
> >>
> >>> Since I don't know in advance what keys it might meet, I can't create all
> >>> the possible columns beforehand ...
> >
> > for (my $n = 0; $n < $q->{NUM_OF_FIELDS}; $n++)
> > { my $name = $q->{NAME}->[$n];
> > next if ( $src->has_column($name) );
> > $src->add_column( $name );
> > # column 'T' exists and is seen here.
> > }
>
> Sorry. I'm late to the party. I add/remove columns at runtime in Handel.
> To make that work, I had to add columns to the source AND to the class:
>
> $schema->source('Foo')->add_column
> $schema->class('Foo')->add_column
>
> If would work for me no other way, which isn't surprising because the
> original intent of add_column was not to do it at runtime.
>
> In your loop above, try adding to the class as well just to see if it
> makes a difference.
Aha. Yes, it does the trick, the ->name form now returns the value instead
of blowing up. Thanks.
It's still a horribly-designed kludge, but at least it behaves as I'd
thought it would. This is progress.
--
Richard Robinson
"The whole plan hinged upon the natural curiosity of potatoes" - S. Lem
_______________________________________________
List: http://lists.rawmode.org/cgi-bin/mailman/listinfo/dbix-class
Wiki: http://dbix-class.shadowcatsystems.co.uk/
IRC: irc.perl.org#dbix-class
SVN: http://dev.catalyst.perl.org/repos/bast/trunk/DBIx-Class/
Searchable Archive: http://www.mail-archive.com/[email protected]/