Devise allows for any model to be used as the authenticatable resource. Instead of hardcoding references to the User model, allow for configuration or inspect the devise config directly to infer the model to be used.
see:
- Devise.mappings
- Devise.authentication_keys