Class: ActiveRecord::Generators::ModelGenerator
- Inherits:
-
Base
- Object
- Thor::Group
- Rails::Generators::Base
- Rails::Generators::NamedBase
- Base
- ActiveRecord::Generators::ModelGenerator
- Defined in:
- activerecord/lib/rails/generators/active_record/model/model_generator.rb
Overview
:nodoc:
Instance Attribute Summary
Attributes included from Rails::Generators::Migration
#migration_class_name, #migration_file_name, #migration_number
Instance Method Summary collapse
-
#create_migration_file ⇒ Object
creates the migration file for the model.
- #create_model_file ⇒ Object
- #create_module_file ⇒ Object
Methods inherited from Base
Methods included from ActiveSupport::Concern
#append_features, #class_methods, extended, #included, #prepend_features, #prepended
Methods included from Rails::Generators::Migration
#create_migration, #migration_template, #set_migration_assigns!
Methods inherited from Rails::Generators::NamedBase
Methods inherited from Rails::Generators::Base
base_root, class_option, default_source_root, desc, exit_on_failure?, hide!, hook_for, inherited, namespace, remove_hook_for, source_root
Methods included from Rails::Generators::Actions
#add_source, #environment, #gem, #gem_group, #generate, #git, #github, #initialize, #initializer, #lib, #rails_command, #rake, #rakefile, #readme, #route, #vendor
Constructor Details
This class inherits a constructor from Rails::Generators::NamedBase
Instance Method Details
#create_migration_file ⇒ Object
creates the migration file for the model.
25 26 27 28 29 |
# File 'activerecord/lib/rails/generators/active_record/model/model_generator.rb', line 25 def create_migration_file return if skip_migration_creation? attributes.each { |a| a..delete(:index) if a.reference? && !a.has_index? } if [:indexes] == false migration_template "create_table_migration.rb", File.join(db_migrate_path, "create_#{table_name}.rb") end |
#create_model_file ⇒ Object
31 32 33 34 |
# File 'activerecord/lib/rails/generators/active_record/model/model_generator.rb', line 31 def create_model_file generate_abstract_class if database && !custom_parent? template "model.rb", File.join("app/models", class_path, "#{file_name}.rb") end |
#create_module_file ⇒ Object
36 37 38 39 |
# File 'activerecord/lib/rails/generators/active_record/model/model_generator.rb', line 36 def create_module_file return if regular_class_path.empty? template "module.rb", File.join("app/models", "#{class_path.join('/')}.rb") if behavior == :invoke end |