does available_pools need to be an instance variable (@available_pools).   Can't it just be local (especially since you're passing it to the view as a local)?