[Dbix-class] Per column filter
Pedro Melo
melo at simplicidade.org
Fri Jun 19 12:37:00 GMT 2009
Hi,
On Jun 18, 2009, at 1:27 PM, Moritz Onken wrote:
> Am 18.06.2009 um 14:18 schrieb Pedro Melo:
>> 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."
Thanks, I'll try this.
Best regards,
--
Pedro Melo
Blog: http://www.simplicidade.org/notes/
XMPP ID: melo at simplicidade.org
Use XMPP!
More information about the DBIx-Class
mailing list