[Dbix-class] Error in DBIx::Class::Manual::Cookbook

Jon Warbrick jw35 at cam.ac.uk
Thu Nov 16 10:20:06 GMT 2006


On Fri, 13 Oct 2006, Toby Corkindale wrote:

> Seems to be an error in the Manual::Cookbook.
> Under "Stringification" it says:
>        Employ the standard stringification technique by using the "overload"
>       module.  Replace "foo" with the column/method of your choice.
>
>           use overload '""' => 'foo', fallback => 1;
>
> However, this results in an error of:
> Can't resolve method "???" overloading """" in package "overload"
>
> Changing the overload line to this (thanks Castaway!) works:
>    use overload '""' => sub { return $_[0]->foo; }, fallback => 1;
> 
>
>This is on Perl 5.8.8 (overload.pm $VERSION=1.04).

For what it's worth I'm seeing something similar-but-different (on perl 
v5.8.5 with overload.pm 1.01). I added stringification in the

  use overload '""' => 'foo', fallback => 1;

style to the target class of a has_one relationship and it stopped 
working, with (as far as I can tell) the accessor returning undef. 
Switching the stringification to

  use overload '""' => sub { shift->foo }, fallback => 1;

fixed the problem. I have neither the clue nor frankly the time at the 
moment to work out what's happening, but offer this as a data point.

Jon.

-- 
Jon Warbrick
Web/News Development, Computing Service, University of Cambridge



More information about the Dbix-class mailing list