STI question

From what you're describing it sounds like you might be better with a
single User model, with guest as a role, rather than separate models.
In that way Message would have_one wrter :class_name=>'User'.