Я хочу реализовать функцию олицетворения в spree (rails), где администратор может войти как другой пользователь.
Я пытался использовать камень претенциозности. Я думаю, что он (претендент) перезаписывает current_user, но в spree user поддерживается spree_current_user.
Я попытался настроить использование драгоценного камня, используя приведенный ниже код.
impersonates :user
Пробовал оба кода.
impersonates :spree_user,
method: :spree_current_user,
with: ->(id) { User.find_by(id: id) }
Первый код запускается без ошибок, но не меняет пользователя.
(Поскольку он перезаписывает current_user, но spree использует spree_current_user)
Второй код выдает эту ошибку: «spree_current_user должен быть определен до метода олицетворения».