class PetergateApi::Generators::InstallGenerator
Public Class Methods
next_migration_number(path)
click to toggle source
# File lib/generators/petergate_api/install_generator.rb, line 11 def self.next_migration_number(path) sleep 1 Time.now.utc.strftime("%Y%m%d%H%M%S") end
Public Instance Methods
add_to_gemfile()
click to toggle source
# File lib/generators/petergate_api/install_generator.rb, line 16 def add_to_gemfile gem "apipie-rails" gem "jwt" end
copy_app()
click to toggle source
# File lib/generators/petergate_api/install_generator.rb, line 39 def copy_app run "cp -rf #{self.class.source_root}/app/ app/" end
copy_initializers()
click to toggle source
# File lib/generators/petergate_api/install_generator.rb, line 47 def copy_initializers run "cp -rf #{self.class.source_root}/initializers config/" end
copy_lib()
click to toggle source
# File lib/generators/petergate_api/install_generator.rb, line 43 def copy_lib run "cp -rf #{self.class.source_root}/lib/ lib/" end
create_migrations()
click to toggle source
# File lib/generators/petergate_api/install_generator.rb, line 51 def create_migrations Dir["#{self.class.source_root}/migrations/*.rb"].sort.each do |filepath| name = File.basename(filepath) migration_template "migrations/#{name}", "db/migrate/#{name}" end end
insert_into_user_model()
click to toggle source
# File lib/generators/petergate_api/install_generator.rb, line 21 def insert_into_user_model inject_into_file "app/models/user.rb", after: /^class\sUser < ActiveRecord::Base/ do <<-'RUBY' has_many :api_connections, class_name: "::Api::Connection" def set_mobile_reset_token! begin self.mobile_reset_token = Base64.strict_encode64(Devise.friendly_token + self.email).strip end while self.class.find_by(mobile_reset_token: self.mobile_reset_token).present? self.save self.mobile_reset_token end RUBY end end