How can I name the fully established sign_in method?

What can I call devise sign_in? I already have a method in my controller sign_in.

I tried

require 'devise/controllers/sign_in_out'
  Devise::Controllers::SignInOut.sign_in @user

cannot load such file -- devise/controllers/sign_in_out

and

include Devise::Controllers::Helpers
  Devise::Controllers::Helpers.sign_in @user

undefined method `sign_in' for Devise::Controllers::Helpers:Module

but not one of them worked.

I also tried

alias_method :devise_sign_in, :sign_in # keep hold of the Devise sign_in method before we overwrite it.
  devise_sign_in @user

which worked in the browser, but when I started rspecit gave this error:

/rsync/BK-Development/app/controllers/community_members_controller.rb∗:in alias_method': undefined methodsign_in 'for class CommunityMembersController' (NameError) from /rsync/BK-Development/app/controllers/community_members_controller.rb:5:in'

I found the source of the method here:

https://github.com/plataformatec/devise/blob/v2.2/lib/devise/controllers/helpers.rb

Develop version 2.2.8

+4
source share
1 answer

Ok i got it to work with

include Devise::Controllers::Helpers
alias_method :devise_sign_in, :sign_in # keep hold of the Devise sign_in method before we overwrite it.
...
  devise_sign_in @user

, . Java , . Ruby.

0

Source: https://habr.com/ru/post/1542987/


All Articles