[Catalyst] accessing ResultSet function from a related object
Ash Berlin
ash_cpan at firemirror.com
Wed Jul 4 21:41:07 GMT 2007
John Goulah wrote:
> I am having some trouble in both controller and template code accessing
> resultset functions off of chained/related objects (because from what
> I'm seeing they are not ResultSets but of the type
> MyApp::Model::MyAppDB::Tablename).
>
> For example I can create a ResultSet object directly like:
> my $owner = $c->model('MyDB::User')->search({ user_id => $owner_id } );
>
> and then I can do for example:
>
> $owner->some_result_set_method()
>
> but I can't do this if I want to chain off another object, such as:
>
> #not ok
> my $owner_id =
> $photo_details_rs->first()->owner->some_result_set_method();
>
> but...
>
> #this is fine, just accessing a field
> my $owner_id = $photo_details_rs->first()->owner->user_id;
>
> and if I have some relation such as 'primary_photo' defined, then in my
> template this is also ok on this model type object:
>
> comment.user.primary_photo.asset.url
>
> but if I wanted to call a method defined in my ResultSet, its not working:
>
> comment.user.some_result_set_method
>
>
> I understand this is because comment.user is of type Model, but it seems
> there would be some way to call these functions since in this case I
> need to get at the user object from each comment since thats whats being
> iterated-
>
> Thanks,
> John
>
Wrong list entirely. You are asking what appears to be a DBIx::Class
question: http://lists.rawmode.org/cgi-bin/mailman/listinfo/dbix-class
More information about the Catalyst
mailing list