如何在Active Admin中使用Action电缆

问题描述 投票:1回答:2

我正在使用Activeadmin创建一个仪表板页面和Devise for User授权。我有2个模型是会员(普通用户)和用户(管理员用户)。当我使用Action电缆功能显示用户外观时,只有会员用户才能收到这些广播。问题是用户模型也可以如何接收这些广播?

谢谢你的时间,抱歉我的笨拙英语

我的联系

module ApplicationCable类Connection <ActionCable :: Connection :: Base identified_by:current_member

def connect
  self.current_member = find_verified_member
  # self.current_user = find_verified_member
  logger.add_tags 'AcctionCable', current_member.email
end

protected
  def find_verified_member

    # if current_member = Member.find_by(id: cookies.signed[:member_id])
    if verified_member = env['warden'].user
      verified_member
    else
      reject_unauthorized_connection
    end
  end

结束

ruby-on-rails devise activeadmin actioncable
2个回答
1
投票

如果你想与actioncable和activeadmin聊天,这里有一个gem的例子。 active_admin_chat

或者您可以尝试下面的代码。

def connect
  self.current_member = find_verified_member
end

protected

def find_verified_member
  cookies_signed = cookies.signed
  admin_user_id = cookies_signed['admin_user.id']
  if admin_user_id
    AdminUser.find(admin_user_id)
  else
    User.find(cookies_signed['user.id'])
  end
end

0
投票

当成员与ActionCable建立连接时,您似乎希望向用户广播频道。如果是这样,在def subscribed方法中,无论渠道成员订阅了哪个,您希望通知管理员用户,请将广播作业运行到所有管理员用户都可访问的频道。管理员可以建立客户端以订阅此频道以接收这些广播。

© www.soinside.com 2019 - 2024. All rights reserved.