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
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"
if yes?("Would you like to use CanCan for authorization?")
gem("cancan")
copy_file "ability.rb", "models/ability.rb"
@single=model_name
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
|