[Catalyst] looping

Boris Ćeranić zextra at gmail.com
Mon Feb 12 20:28:10 GMT 2007


On 12/02/07, Will Smith <willbelair at yahoo.com> wrote:
> Hi,
>  I may ask the same old question, but just could get it. So please help me
> to get it done. All I want is looping through the record set for example: if
> I want to loop through a column, I can use this:
>
>  my @lname;
>          ########################
>          my $column =
> $c->model("myDB::Author")->get_column('last_name');
>          while(my $name = $column->next){
>              $lname[$i] = $name;
>              $i = $i + 1;
>          }
>  -----
>  but if I try:
>  my $recordset = [$c->model('myDB::Books')->search(
> authorid => "${authorid}" )];
>  while(my $name = $recordset->next){
>              $lname[$i] = $name->lname;
>              $fname[$i] = $name->fname;
>              $i = $i + 1;
>          }
>...
>
> Thank you
>

You should have placed $recordset in foreach, like this:

my $recordset = [ something that returns list in list context ];

foreach my $name ( @$recordset ) {
...
}



More information about the Catalyst mailing list