Class: Apit::Generators::SetupGenerator

Inherits:
Rails::Generators::Base
  • Object
show all
Includes:
Rails::Generators::Migration
Defined in:
lib/generators/apit/setup_generator.rb

Instance Method Summary collapse

Instance Method Details

#setupObject



7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
# File 'lib/generators/apit/setup_generator.rb', line 7

def setup
if yes?("Would you like to generate a layout?")
  generate("apit:layout")
end
if yes?("Would you like to use simple-form for form generation?")
	gem("simple_form")
end				
#Devise
if yes?("Would you like to use OmniAuth authentication?")
	gem("omniauth")
	generate("model", "user provider:string uid:string name:string")
	template "sessions_controller.rb", "app/controllers/sessions_controller.rb"
	template "user.rb", "app/models/user.rb"
	route("match \"/auth/:provider/callback\" => \"sessions#create\"")
	route("match \"/signout\" => \"sessions#destroy\", :as => :signout")
	template "omniauth_initializer.rb", "config/initializers/omniauth.rb"

	#CanCan
	if yes?("Would you like to use CanCan for authorization?")
	  gem("cancan")
    copy_file "ability.rb", "models/ability.rb"
		@single=model_name
		#insert_into_file "config/environment.rb", "config.gem :thor", :after => "Rails::Initializer.run do |config|\n"
		inject_into_class "app/models/user.rb", model_name.camelcase, "has_and_belongs_to_many :roles\n"
							
		template "role.rb", "app/models/role.rb"

		migration_template 'create_roles_migration.rb', "db/migrate/create_roles_migration.rb"
	end

end
end