Class: Erb::Generators::MailerGenerator

Inherits:
Base show all
Defined in:
lib/rails/generators/erb/mailer/mailer_generator.rb

Overview

:nodoc:

Instance Method Summary collapse

Methods inherited from Rails::Generators::NamedBase

#initialize

Methods inherited from Rails::Generators::Base

base_root, class_option, default_source_root, desc, hide!, hook_for, inherited, namespace, remove_hook_for, source_root

Methods included from Rails::Generators::Actions

#add_source, #after_bundle, #capify!, #environment, #gem, #gem_group, #generate, #git, #initialize, #initializer, #lib, #rails_command, #rake, #rakefile, #readme, #route, #vendor

Constructor Details

This class inherits a constructor from Rails::Generators::NamedBase

Instance Method Details

#copy_view_filesObject



8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
# File 'lib/rails/generators/erb/mailer/mailer_generator.rb', line 8

def copy_view_files
  view_base_path = File.join("app/views", class_path, file_name + '_mailer')
  empty_directory view_base_path

  if self.behavior == :invoke
    formats.each do |format|
      layout_path = File.join('app/views/layouts', class_path, filename_with_extensions('mailer', format))
      template filename_with_extensions(:layout, format), layout_path
    end
  end

  actions.each do |action|
    @action = action

    formats.each do |format|
      @path = File.join(view_base_path, filename_with_extensions(action, format))
      template filename_with_extensions(:view, format), @path
    end
  end
end