devroom.io/content/posts/2012-11-02-decorating_sorcery_current_user_with_draper.md
2019-06-05 14:32:16 +02:00

916 B

+++ date = "2012-11-02" title = "Decorating Sorcery's current_user with Draper" tags = ["Ruby", "Rails", "devise", "draper", "sorcery"] slug = "decorating_sorcery_current_user_with_draper" +++ I already wrote about how to apply your decorator to the current_user when you're using Devise. However, the trick is a bit different when applied to Sorcery.

Instead of being nil when no user is signed in, Sorcery uses an explicit false value, no nil. In your ApplicationController at app/controllers/application_controller.rb add this:

def current_user
  UserDecorator.decorate(super) unless super == false
end

I'm using the most recent version of Draper by the way.