From 28035db109c35bc0bc40272c621ac3c777a62a72 Mon Sep 17 00:00:00 2001 From: David Heinemeier Hansson Date: Wed, 16 Dec 2015 21:05:13 +0100 Subject: Generate all the ApplicationCable stubs by default, like all other Application* stubs --- railties/lib/rails/generators/rails/app/app_generator.rb | 2 ++ .../rails/app/templates/app/assets/javascripts/cable.coffee | 7 +++++++ .../rails/app/templates/app/channels/application_cable/channel.rb | 5 +++++ .../app/templates/app/channels/application_cable/connection.rb | 5 +++++ railties/lib/rails/generators/rails/app/templates/config/routes.rb | 2 +- 5 files changed, 20 insertions(+), 1 deletion(-) create mode 100644 railties/lib/rails/generators/rails/app/templates/app/assets/javascripts/cable.coffee create mode 100644 railties/lib/rails/generators/rails/app/templates/app/channels/application_cable/channel.rb create mode 100644 railties/lib/rails/generators/rails/app/templates/app/channels/application_cable/connection.rb (limited to 'railties') diff --git a/railties/lib/rails/generators/rails/app/app_generator.rb b/railties/lib/rails/generators/rails/app/app_generator.rb index 16f30d0135..61c99ccd33 100644 --- a/railties/lib/rails/generators/rails/app/app_generator.rb +++ b/railties/lib/rails/generators/rails/app/app_generator.rb @@ -57,6 +57,8 @@ module Rails directory 'app' keep_file 'app/assets/images' + keep_file 'app/assets/javascripts/channels' + keep_file 'app/mailers' keep_file 'app/models' diff --git a/railties/lib/rails/generators/rails/app/templates/app/assets/javascripts/cable.coffee b/railties/lib/rails/generators/rails/app/templates/app/assets/javascripts/cable.coffee new file mode 100644 index 0000000000..4166ea02f1 --- /dev/null +++ b/railties/lib/rails/generators/rails/app/templates/app/assets/javascripts/cable.coffee @@ -0,0 +1,7 @@ +#= require action_cable +#= require_self +#= require_tree ./channels + +# Turn on the cable connection by removing the comments from the statements below: +# @App ||= {} +# App.cable = ActionCable.createConsumer() diff --git a/railties/lib/rails/generators/rails/app/templates/app/channels/application_cable/channel.rb b/railties/lib/rails/generators/rails/app/templates/app/channels/application_cable/channel.rb new file mode 100644 index 0000000000..438c84154d --- /dev/null +++ b/railties/lib/rails/generators/rails/app/templates/app/channels/application_cable/channel.rb @@ -0,0 +1,5 @@ +# Be sure to restart your server when you modify this file. Action Cable runs in an EventMachine loop that does not support auto reloading. +module ApplicationCable + class Channel < ActionCable::Channel::Base + end +end diff --git a/railties/lib/rails/generators/rails/app/templates/app/channels/application_cable/connection.rb b/railties/lib/rails/generators/rails/app/templates/app/channels/application_cable/connection.rb new file mode 100644 index 0000000000..965046f3c7 --- /dev/null +++ b/railties/lib/rails/generators/rails/app/templates/app/channels/application_cable/connection.rb @@ -0,0 +1,5 @@ +# Be sure to restart your server when you modify this file. Action Cable runs in an EventMachine loop that does not support auto reloading. +module ApplicationCable + class Connection < ActionCable::Connection::Base + end +end diff --git a/railties/lib/rails/generators/rails/app/templates/config/routes.rb b/railties/lib/rails/generators/rails/app/templates/config/routes.rb index 722b845472..3dfd415645 100644 --- a/railties/lib/rails/generators/rails/app/templates/config/routes.rb +++ b/railties/lib/rails/generators/rails/app/templates/config/routes.rb @@ -2,5 +2,5 @@ Rails.application.routes.draw do # For details on the DSL available within this file, see http://guides.rubyonrails.org/routing.html # Serve websocket cable requests in-process - mount ActionCable.server => '/cable' if defined?(ApplicationCable) + mount ActionCable.server => '/cable' end -- cgit v1.2.3