Aggregating multiple ActiveRecord relationships

The following pastie will help with my question below: help: http://pastie.org/219582

A user has_many Items via both the User model as well as the user's parent Account model . Other users are able to make their own Items visible to other users via the AccountsItemsPermission relationship.

I would like to create a "meta" relationship for the user that aggregates both has_many relationships at the User and Account level into one, so there is an easy-to-access 'visible_items' relationship that retrieves all accessible Items for a give user.

As you can see, I am currently using custom finder_sql to achieve this goal, but would like to see if there are more elegant solutions to this problem that wouldn't have to resort to finder_sql. One of the disadvantages of finder_sql is that it is incompatible with plugins like will_paginate.

Any ideas would be appreciated, thanks!

Jack