model method_missing refactoring