Am 18.06.2009 um 14:18 schrieb Pedro Melo:
Hi,
I'm wrapping DBIx::Class over a legacy database that uses the
iso-8859-1 charset internally. My app expects all perl strings as
utf8.
I'm trying to write an extension to DBIC that decodes the value from
the DB into utf8, and does the reverse when I insert/update data. At
first I tried to use the InflateColumn as the base of this, but it
expects a DB -> Object / Object -> DB flow, and cannot support the
DB -> scalar / scalar -> DB (at least not on the deflate part).
I was wondering if anybody has any ideas/suggestions on how to do
this inside DBIC. I would prefer not to manually encode/decode data
I get from the DB.
Basically a setup like the current InflateColumn but that allows
scalars to be processed on the deflate step would work, like a filter.
Have a look at store_column which you can override in a result class.
From the docs:
"This is the lowest level at which data is set on a row object, extend
this method to catch all data setting methods."
cheers,
moritz
_______________________________________________
List: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/dbix-class
IRC: irc.perl.org#dbix-class
SVN: http://dev.catalyst.perl.org/repos/bast/DBIx-Class/
Searchable Archive: http://www.grokbase.com/group/[email protected]