我正在使用Rails和ActionCable构建应用程序,但我不断获得
未定义的局部变量或方法`current_user'
和connect
方法从未成功
class OrdersChannel < ApplicationCable::Channel
def subscribed
stream_from "market_orders_channel_#{current_user.id}"
end
def unsubscribed
# Any cleanup needed when channel is unsubscribed
end
end
module ApplicationCable
class Connection < ActionCable::Connection::Base
identified_by :current_user
rescue_from ActiveRecord::RecordNotFound do
reject_unauthorized_connection
end
def connect
self.current_user = find_verified_user
end
protected
def find_verified_user
token = Doorkeeper::AccessToken.find_by(token: request.params[:access_token])
reject_unauthorized_connection if token.blank?
Spree::User.find(token.resource_owner_id)
end
end
end
当我在连接中添加断点时,它永远不会被调用,并且在subscribed
方法中,我不断出错。如何解决这个问题?我正在使用ruby 2.5.1和rails 5.2.0
我已经尝试了所有其他解决方案,但是没有一个起作用
答案 0 :(得分:0)
我已经解决了这个问题,我想在我的Spree
扩展名中而不是在我的主项目中定义动作电缆通道,当我将代码移到主项目中时就可以使用