Ruby on rails Pusher:如何将Pusher客户端设置为intilizer?

Ruby on rails Pusher:如何将Pusher客户端设置为intilizer?,ruby-on-rails,ruby,pusher,Ruby On Rails,Ruby,Pusher,pusher发布的新版本 require 'pusher' pusher_client = Pusher::Client.new( app_id: '12242', key: '0d3ae65', secret: '88147', cluster: 'ap1', encrypted: true ) pusher_client.trigger('my-channel', 'my-event', { message: 'hello world' }) 在此之前,我是这样

pusher发布的新版本

require 'pusher'

pusher_client = Pusher::Client.new(
  app_id: '12242',
  key: '0d3ae65',
  secret: '88147',
  cluster: 'ap1',
  encrypted: true
)

pusher_client.trigger('my-channel', 'my-event', {
  message: 'hello world'
})
在此之前,我是这样设置全局配置的

Pusher.app_id = ENV['PUSHER_APP_ID']
Pusher.key = ENV['PUSHER_KEY']
Pusher.secret = ENV['PUSHER_SECRET']
Pusher.logger = Rails.logger
Pusher.encrypted = true
Pusher.host = 'api-ap1.pusher.com'
Pusher.cluster = ENV['PUSHER_CLUSTER']

Pusher.trigger channels, 'new_message', self

现在,如何将Pusher客户端配置添加到Initializer中,这样我就不需要每次初始化它了???

Pusher\u客户端
客户端变量重命名为
$Pusher\u客户端
Pusher客户端
——这样就可以从代码的其余部分访问它(不使用局部变量)


将此脚本放入自动加载的
config/initializers
文件夹中的新文件中

pusher\u客户机
客户机变量重命名为
$pusher\u客户机
pusher客户机
——这样就可以从代码的其余部分访问它(不使用局部变量)


将此脚本放入自动加载的
config/initializers
文件夹中的新文件中

@mxple谢谢它能工作,你能解释一下为什么PusherClient能工作吗?以小写字母开头的变量是“本地”变量,它们在其他文件中不可用。以大写字母开头的是“常量”,因此它们是可用的。@mxple感谢它的工作原理,您能解释一下PusherClient为什么工作吗?以小写字母开头的变量是“本地”变量,它们在其他文件中不可用。以大写字母开头的是“常量”,因此它们是可用的。