Sha256: 11addc0551ac14c64c70f3a81688de668910879f95c588626a4acbcfb6ee2665
Contents?: true
Size: 720 Bytes
Versions: 35
Compression:
Stored size: 720 Bytes
Contents
module ActionCable module Channel module Naming extend ActiveSupport::Concern class_methods do # Returns the name of the channel, underscored, without the <tt>Channel</tt> ending. # If the channel is in a namespace, then the namespaces are represented by single # colon separators in the channel name. # # ChatChannel.channel_name # => 'chat' # Chats::AppearancesChannel.channel_name # => 'chats:appearances' def channel_name @channel_name ||= name.sub(/Channel$/, '').gsub('::',':').underscore end end # Delegates to the class' <tt>channel_name</tt> delegate :channel_name, to: :class end end end
Version data entries
35 entries across 35 versions & 4 rubygems