Class: Kryptonite::ScaffoldGenerator

Inherits:
Rails::Generators::NamedBase
  • Object
show all
Includes:
KryptoniteHelper, Rails::Generators::Migration
Defined in:
lib/generators/kryptonite/scaffold/scaffold_generator.rb

Class Method Summary collapse

Instance Method Summary collapse

Methods included from KryptoniteHelper

#kryptonite_assets_field, #kryptonite_check_box, #kryptonite_check_box_group, #kryptonite_collection_select, #kryptonite_date_select, #kryptonite_datetime_select, #kryptonite_file_field, #kryptonite_generate_page_title, #kryptonite_get_access_level_array, #kryptonite_get_access_level_text, #kryptonite_get_full_version_string, #kryptonite_get_language_array, #kryptonite_get_short_version_string, #kryptonite_get_version_info, #kryptonite_hidden_field, #kryptonite_password_field, #kryptonite_radio_button, #kryptonite_radio_button_group, #kryptonite_select, #kryptonite_show_icon, #kryptonite_show_row_icon, #kryptonite_table_cell_link, #kryptonite_table_cell_no_link, #kryptonite_text_area, #kryptonite_text_area_big, #kryptonite_text_field, #kryptonite_time_select, #kryptonite_time_zone_select

Class Method Details

.next_migration_number(dirname) ⇒ Object



12
13
14
15
16
17
18
# File 'lib/generators/kryptonite/scaffold/scaffold_generator.rb', line 12

def self.next_migration_number dirname
  if ActiveRecord::Base.timestamped_migrations
    Time.now.utc.strftime("%Y%m%d%H%M%S")
  else
    "%.3d" % (current_migration_number(dirname) + 1)
  end
end

Instance Method Details

#generate_filesObject



20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
# File 'lib/generators/kryptonite/scaffold/scaffold_generator.rb', line 20

def generate_files
  @plural_route = (plural_name != singular_name) ? plural_name : "#{plural_name}_index"
  
  template 'en.yml', "config/locales/kryptonite/#{plural_name}/en.yml"
  template 'controller.rb', "app/controllers/kryptonite/#{plural_name}_controller.rb"
  template 'views/index.html.erb', "app/views/kryptonite/#{plural_name}/index.html.erb"
  template 'views/show.html.erb', "app/views/kryptonite/#{plural_name}/show.html.erb"
  template 'views/new.html.erb', "app/views/kryptonite/#{plural_name}/new.html.erb"
  template 'views/_form.html.erb', "app/views/kryptonite/#{plural_name}/_form.html.erb"
  template 'views/_table.html.erb', "app/views/kryptonite/#{plural_name}/_table.html.erb"
  
  add_namespace_to_routes
  add_to_routes
  add_to_navigation
  
  if options[:create_model_and_migration]
    template 'model.rb', "app/models/#{singular_name}.rb"
    migration_template 'migration.rb', "db/migrate/create_#{plural_name}.rb"
  end
end