[Catalyst] doc patches and minor revelations

John Romkey romkey at apocalypse.org
Sat May 30 03:47:10 GMT 2009


On May 29, 2009, at 2:43 PM, Jarom Smith wrote:
> One revelation I had recently which I don't think has been mentioned  
> anywhere (at least not that I recall) is that when using DBIC and  
> Catalyst, *everything* is treated as a scalar.  (is this a true  
> statement?)  So in other words,
>
> my $people = $c->model('AddressDB::People')
>
> instead of
>
> my @people = $c->model('AddressDB::People')


Assuming that AddressDB::People is a DBIx::Class-based model, then

my $people = $c->model('AddressDB::People')

will get you a DBIx::Class::ResultSet object, which is an object. You  
can then use that object to iterate over the resultset or chain  
another search on it.

my @people = $c->model('AddressDB::People')

will get you an array of row objects, which are the values returned by  
iterating over the resultset. It's the equivalent of $c- 
 >model('AddressBookDB::People')->all();

Catalyst just provides a thin wrapper around the model, so this  
doesn't really have anything to do with Catalyst and is more the  
behaviour of DBIx::Class.
	- john romkey
	http://www.romkey.com/




More information about the Catalyst mailing list