class Autopilot::Generators::AccountsGenerator
Public Instance Methods
do_magic()
click to toggle source
# File lib/generators/autopilot/accounts_generator.rb, line 7 def do_magic puts "Setting up multiple users per accounts" gem 'devise_invitable', '~> 2.0.0' Bundler.with_clean_env do run "bundle install" end generate "devise_invitable:install" generate "devise_invitable User" generate "model Account" template "account.rb", "app/models/account.rb", force: true template "user.rb", "app/models/user.rb", force: true copy_file "controllers/accounts_controller.rb", "app/controllers/accounts_controller.rb", force: true copy_file "controllers/application_controller.rb", "app/controllers/application_controller.rb", force: true route "get 'account/users', to: 'accounts#users', as: :account_users" route "post 'account/send_user_invite' => 'accounts#send_user_invite', as: :send_user_invite" copy_file "views/accounts/users.html.erb", "app/views/accounts/users.html.erb" inject_into_file 'app/views/layouts/_nav.html.erb', after: "dash_path %>\n" do <<-'RUBY' <%= link_to "Users", account_users_path %> RUBY end inject_into_file 'config/environments/development.rb', after: "Rails.application.configure do\n" do <<-'RUBY' config.action_mailer.default_url_options = { :host => 'localhost' } RUBY end generate "migration AddAccountToUsers account:references" generate "migration AddOwnerIdToAccounts owner_id:integer" generate "migration AddDeletedAtToAccounts deleted_at:datetime:index" end