[PerlChina] 关于DBIx::Class::ResultClass::HashRefInflator一点问题

cui robin cuiyuming at gmail.com
Tue Mar 18 02:03:52 PDT 2008


HI,
我是昨天问过DBIC数据向JSON转换的家伙,在fayland的提示下,开始使用DBIC中包含的的HashRefInflator模块,将结果先转换成hash,然后再用Catalyst::View::JSON转成JSON。
可是我发现个问题,如果我用resultset的find方法,如下:DataDumper可以看出得到一个正确的Hash结果,但是如果使用search得到的结果,其中的内容还是object的,很多冗余信息。
大家有遇到这个问题么?

#! /usr/bin/perl
use lib './';
use CBSDB;
use Data::Dumper;
use DBIx::Class::ResultClass::HashRefInflator;

my $dsn='dbi:mysql:dbStatus;192.168.182.5';
my $user='dbstatus';
my $pass='dbstatus';
my $schema = CBSDB->connect($dsn,$user,$pass);
$schema->storage->debug(1);

my $rs_base_mach = $schema->resultset('Base_mach');
$rs_base_mach->result_class('DBIx::Class::ResultClass::HashRefInflator');
#$base_mach = [$rs_base_mach->search({'me.app' =>
'Penguin'},{join=>'mach_group',prefetch=>'mach_group'})];
$base_mach=$rs_base_mach->find('172.24.68.93');
print Data::Dumper->Dumper($base_mach);

robincui
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.pm.org/pipermail/china-pm/attachments/20080318/e657590f/attachment-0001.html 


More information about the China-pm mailing list