Hello,

I'm trying to use RestrictWithObject in my Catalyst app
to filter all of the results of queries to my Model by
checking if their keys are in hash that I put inside the
'Restricting Object'.  I've successfully gotten the
'restrict_Foo_resultset' to be called, but I'm stuck
when trying to build a result set to return.

I have some logic that sift through each row if the $fullset
and then tries to build a new $filterset to return.  No matter
how I build the $filterset, the app is getting access
to all of the rows in the $fullset.

Here is a my latest attempt at the restricting method:

sub restrict_Foo_resultset {
    my $self = shift;
    my $fullset = shift;
    my $class = $fullset->result_class();

    my @all;
    while (my $item = $fullset->next()) {
        if (defined($self->{hash}->{$item->id()})) {
            push(@all, $item);
        }
    }

    $fullset->reset();
    $fullset->set_cache([EMAIL PROTECTED]);
    return $fullset;
}

I've also tried:

    $fullset->set_cache([EMAIL PROTECTED]);
    return $fullset->search_rs();

Any pointers on the correct way to do this?

-- 
James R. Leu
[EMAIL PROTECTED]

Attachment: pgpn2MywQ0tnZ.pgp
Description: PGP signature

_______________________________________________
List: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/dbix-class
IRC: irc.perl.org#dbix-class
SVN: http://dev.catalyst.perl.org/repos/bast/DBIx-Class/
Searchable Archive: http://www.grokbase.com/group/[EMAIL PROTECTED]

Reply via email to