web-dev-qa-db-fra.com

ActionCable.server.broadcast à partir de la console

Je peux utiliser le code suivant dans le contrôleur mais pas dans la console (les deux environnement de développement). J'utilise Rails 5.0.0.beta2.

ActionCable.server.broadcast 'example_channel', message: '<p>Test</p>'

La console:

>> ActionCable.server.broadcast 'example_channel', message: '<p>Test</p>'
[ActionCable] Broadcasting to example_channel: {:message=>"<p>Test</p>"}
=> []

Comment puis-je l'utiliser dans la console?

31
wintermeyer

Le comportement par défaut d'ActionCable en mode développement consiste à utiliser l'adaptateur async, qui fonctionne uniquement dans le même processus. Pour la diffusion interprocessus, vous devrez passer à l'adaptateur redis.

Pour activer redis en mode développement, vous devrez éditer config/cable.yml:

redis: &redis
  adapter: redis
  url: redis://localhost:6379/1

production: *redis
development: *redis
test: *redis
65
Sam Pohlenz