class ApiScaffold::Generators::ApiScaffoldGenerator
Attributes
attributes[RW]
Public Instance Methods
add_routes()
click to toggle source
# File lib/generators/api_scaffold/api_scaffold_generator.rb, line 42 def add_routes # Include tabs and line break for proper formatting routes_string = " resources :#{controller_file_name}, except: [:new, :edit]\n" # Inject into file following the api scope and v1 namespace inject_into_file 'config/routes.rb', after: " namespace :api, defaults: { format: :json } do\n namespace :#{prefix} do\n" do routes_string end end
create_controller_files()
click to toggle source
# File lib/generators/api_scaffold/api_scaffold_generator.rb, line 26 def create_controller_files if gem_available?('fast_jsonapi') || gem_available?('active_model_serializers') template "controllers/serializer_controller.rb", File.join("app/controllers/api/", prefix, "#{controller_file_name}_controller.rb") else template "controllers/controller.rb", File.join("app/controllers/api", prefix, "#{controller_file_name}_controller.rb") end end
create_controller_test_files()
click to toggle source
# File lib/generators/api_scaffold/api_scaffold_generator.rb, line 34 def create_controller_test_files if test_framework == :rspec template "tests/rspec/controller_spec.rb", File.join("spec/controllers/api", prefix, "#{controller_file_name}_controller_spec.rb") else template "tests/test_unit/controller_spec.rb", File.join("test/controllers/api", prefix, "#{controller_file_name}_controller_test.rb") end end
create_serializer_files()
click to toggle source
# File lib/generators/api_scaffold/api_scaffold_generator.rb, line 51 def create_serializer_files if gem_available?('fast_jsonapi') || gem_available?('active_model_serializers') invoke "serializer" template "serializers/error_serializer.rb", File.join("app/serializers", "error_serializer.rb") unless error_serializer_created? end end