From: Robert Krimen <rkrimen@cpan.org>
Date: Tue, 6 Feb 2007 19:40:00 +0000 (+0000)
Subject: Added;
X-Git-Tag: v0.08010~184
X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=1697e138eeb96cab5ab20c35a8834cf8ce5106d1;p=dbsrgits%2FDBIx-Class.git

Added;
	FAQ-fetch-a-formatted-column.txt
	FAQ-store-JSON-in-a-column.txt
---

diff --git a/lib/DBIx/Class/Manual/FAQ.pod b/lib/DBIx/Class/Manual/FAQ.pod
index 2117896..540bd21 100644
--- a/lib/DBIx/Class/Manual/FAQ.pod
+++ b/lib/DBIx/Class/Manual/FAQ.pod
@@ -255,6 +255,17 @@ Call C<get_column> on a L<DBIx::Class::ResultSet>, this returns a
 L<DBIx::Class::ResultSetColumn>, see it's documentation and the
 L<Cookbook|DBIx::Class::Manual::Cookbook> for details.
 
+=item .. fetch a formatted column?
+
+In your table schema class, create a "private" column accessor with:
+
+  __PACKAGE__->add_columns(my_common => { accessor => '_hidden_my_column' });
+
+Then, in the same class, implement a subroutine called "my_column" that
+fetches the real value and does the formatting you want.
+
+See the Cookbook for more details.
+
 =back
 
 =head2 Inserting and updating data
@@ -296,6 +307,18 @@ scalar reference:
 
  ->update({ somecolumn => \'othercolumn' })
 
+=item .. store JSON in a column and have it deflate/inflate automatically?
+
+In your table schema class, do the following:
+
+ use JSON;
+
+ __PACKAGE__->add_columns(qw/ ... my_column ../)
+ __PACKAGE__->inflate_column('my_column', {
+     inflate => sub { jsonToObj(shift) },
+     deflate => sub { objToJson(shift) },
+ });
+
 =back
 
 =head2 Misc