[eluser]coolfactor[/eluser]
I see why you're using this approach.
1. You load a bunch of posts
2. As you output each post, you grab the poster's name using your User_model.
Don't be afraid to iterate over your data in the controller before passing it to the view. I know there is a fixation on performance that blinds many developers to the true speed of today's servers and the lack of harm done in pre-processing the data.
1. Load your posts in the controller.
2. Iterate over the resultset, and retrieve the User's name on each iteration, assigning each post to a new array along with the User's name.
3. Pass that new array to the view.
Of course, a MySQL join operation would eliminate that extra work.