Caching a model that belongs to another model

It already is cached. tail -f log/development.log and then open up
the console. Watch the log file as you run these queries
u = User.find 1 # SELECT ...
u.user_properties # SELECT ...
u.user_properties # no query

Rails caches the association, so you don't have to worry about it.

You can reduce the number of queries down to one by using the :include
option to find.

u = User.find 1, :include => :user_properties

Rails will do a join and pull all the info in one query.