I\'m trying to get Action Cable working with Devise.
module ApplicationCable
class Connection < ActionCable::Connection::Base
identified_by :current_us
Try setting the cookie in a warden callback.
Add a file to `config/initializers/your_file.rb``
Add this to the file:
Warden::Manager.after_set_user do |user, auth, opts|
scope = opts[:scope]
auth.cookies.signed["#{scope}.id"] = user.id
auth.cookies.signed["#{scope}.expires_at"] = 60.minutes.from_now
end
Warden::Manager.before_logout do |user, auth, opts|
scope = opts[:scope]
auth.cookies.signed["#{scope}.id"] = nil
auth.cookies.signed["#{scope}.expires_at"] = nil
end
Or you could do something like this:
verified_user = env['warden'].user
As explained in this very nice tuorial: https://www.sitepoint.com/create-a-chat-app-with-rails-5-actioncable-and-devise/