[Dbix-class] $Schema->populate ignores components with ->insert, etc

John Napiorkowski jjn1056 at yahoo.com
Wed Aug 15 15:11:38 GMT 2007


Hi,

I noticed that when using ->populate in void mode that
it skips any overrides to ->insert and the like.  This
is because when I wrote that I simple pass the data to
->execute_array in the storage class.

I don't see an easy way around this since these types
of modules are overriding ->insert directly, not so
other method I can call.

For the moment I propose to update the documentation,
since this is the kind of thing that could sting you
if you don't understand what's going on.  For the long
term I think we need to separate the methods that
actually modify the storage, something
'prepare_insert' that calls 'insert' and then
component authors would override that instead of new. 
Then in the ->populate I could call that to perform
any needed data manipulation.

Or is there an easier way?

Thanks!
John


       
____________________________________________________________________________________
Yahoo! oneSearch: Finally, mobile search 
that gives answers, not web links. 
http://mobile.yahoo.com/mobileweb/onesearch?refer=1ONXIC



More information about the DBIx-Class mailing list