Class: Clavis::Generators::ControllerGenerator

Inherits:
Rails::Generators::Base
  • Object
show all
Defined in:
lib/generators/clavis/controller/controller_generator.rb

Instance Method Summary collapse

Instance Method Details

#add_routesObject



22
23
24
25
26
27
28
29
30
31
32
33
34
35
# File 'lib/generators/clavis/controller/controller_generator.rb', line 22

def add_routes
  return if options[:skip_routes]

  route_config = <<~ROUTES
    # OAuth routes
    get '/auth/:provider', to: '#{file_name}#authorize', as: :auth
    get '/auth/:provider/callback', to: '#{file_name}#callback', as: :auth_callback
    get '/auth/failure', to: '#{file_name}#failure', as: :auth_failure
    get '/login', to: '#{file_name}#login', as: :login
    delete '/logout', to: '#{file_name}#logout', as: :logout
  ROUTES

  route route_config
end

#create_controllerObject



14
15
16
# File 'lib/generators/clavis/controller/controller_generator.rb', line 14

def create_controller
  template "controller.rb.tt", "app/controllers/#{file_name}_controller.rb"
end

#create_viewsObject



18
19
20
# File 'lib/generators/clavis/controller/controller_generator.rb', line 18

def create_views
  template "views/login.html.erb.tt", "app/views/#{file_name}/login.html.erb"
end