Class: RailsCodeGenerator::ResourcesGenerator

Inherits:
Rails::Generators::NamedBase
  • Object
show all
Includes:
Rails::Code::Generator::ModelAttributes, Rails::Code::Generator::Naming
Defined in:
lib/generators/rails_code_generator/resources/resources_generator.rb

Constant Summary

Constants included from Rails::Code::Generator::ModelAttributes

Rails::Code::Generator::ModelAttributes::AUTH_USER_ASSOCIATION, Rails::Code::Generator::ModelAttributes::DRY_TYPE_MAP, Rails::Code::Generator::ModelAttributes::EXCLUDED_COLUMNS, Rails::Code::Generator::ModelAttributes::FAKER_EXPRESSION_MAP

Instance Method Summary collapse

Methods included from Rails::Code::Generator::ModelAttributes

#factory_definition_body, #model_attributes, #normalizer_attributes_list, #permitted_attributes_list, #request_params_attributes_list, #request_spec_association_givens, #validator_attributes_list

Methods included from Rails::Code::Generator::Naming

#plural_class_name, #resource_controller_class, #resource_module_name, #resource_normalizer_class, #route_path, #singular_name, #template_mode

Instance Method Details

#create_controllerObject



17
18
19
# File 'lib/generators/rails_code_generator/resources/resources_generator.rb', line 17

def create_controller
  template "#{template_mode}/controller.rb", File.join("app/controllers", "#{table_name}_controller.rb")
end

#create_factoryObject



38
39
40
# File 'lib/generators/rails_code_generator/resources/resources_generator.rb', line 38

def create_factory
  template "shared/factory.rb", File.join("spec/factories", "#{singular_name}.rb")
end

#create_normalizerObject



34
35
36
# File 'lib/generators/rails_code_generator/resources/resources_generator.rb', line 34

def create_normalizer
  template "shared/normalizer.rb", File.join("app/normalizers", "#{table_name}_normalizer.rb")
end

#create_request_specsObject



42
43
44
45
46
47
48
# File 'lib/generators/rails_code_generator/resources/resources_generator.rb', line 42

def create_request_specs
  template "shared/index_spec.rb", File.join("spec/requests", table_name, "index_spec.rb")
  template "shared/show_spec.rb", File.join("spec/requests", table_name, "show_spec.rb")
  template "#{template_mode}/create_spec.rb", File.join("spec/requests", table_name, "create_spec.rb")
  template "#{template_mode}/update_spec.rb", File.join("spec/requests", table_name, "update_spec.rb")
  template "#{template_mode}/destroy_spec.rb", File.join("spec/requests", table_name, "destroy_spec.rb")
end

#create_servicesObject



21
22
23
24
25
# File 'lib/generators/rails_code_generator/resources/resources_generator.rb', line 21

def create_services
  template "#{template_mode}/build.rb", File.join("app/services", table_name, "build.rb")
  template "#{template_mode}/save.rb", File.join("app/services", table_name, "save.rb")
  template "#{template_mode}/update.rb", File.join("app/services", table_name, "update.rb")
end

#create_validatorsObject



27
28
29
30
31
32
# File 'lib/generators/rails_code_generator/resources/resources_generator.rb', line 27

def create_validators
  template "#{template_mode}/create_validator.rb",
           File.join("app/validators", table_name, "create_validator.rb")
  template "#{template_mode}/update_validator.rb",
           File.join("app/validators", table_name, "update_validator.rb")
end