def for_scope(scope, user = GuestUser.new) case scope when 'saved' user.saved_articles.scoped when 'my' user.tagged_articles.scoped else scoped end end # ????????? scoped or none or something else? class Guest def saved_articles Article.scoped end end