Thin controllers and fat models

You want the controller to responsible for passing model data from the
database to the view and vice versa. You don't want to clutter the
controller with model specific logic...that's why you want it in the
model where it's self-contained. Try this article:

http://www.therailsway.com/2007/6/1/railsconf-recap-skinny-controllers