Class: ReviseAuth::Generators::ModelGenerator
- Inherits:
-
Rails::Generators::NamedBase
- Object
- Rails::Generators::NamedBase
- ReviseAuth::Generators::ModelGenerator
- Includes:
- Rails::Generators::ResourceHelpers
- Defined in:
- lib/generators/revise_auth/model_generator.rb
Instance Method Summary collapse
- #add_revise_auth_model ⇒ Object
- #add_uniq_to_email_index ⇒ Object
- #done ⇒ Object
- #generate_model ⇒ Object
-
#initialize(args, *options) ⇒ ModelGenerator
constructor
A new instance of ModelGenerator.
Constructor Details
#initialize(args, *options) ⇒ ModelGenerator
Returns a new instance of ModelGenerator.
13 14 15 |
# File 'lib/generators/revise_auth/model_generator.rb', line 13 def initialize(args, *) super end |
Instance Method Details
#add_revise_auth_model ⇒ Object
27 28 29 30 31 32 33 34 |
# File 'lib/generators/revise_auth/model_generator.rb', line 27 def add_revise_auth_model prepend_to_file "app/models/api_token.rb", "require 'revise_auth-jets'\n" inject_into_class "app/models/api_token.rb", "ApiToken", " include ReviseAuth::ApiModel\n" prepend_to_file model_path, "require 'revise_auth-jets'\n" inject_into_class model_path, class_name, " include ReviseAuth::Model\n" inject_into_class model_path, class_name, " has_many :api_tokens, dependent: :destroy\n" end |
#add_uniq_to_email_index ⇒ Object
36 37 38 39 40 41 42 |
# File 'lib/generators/revise_auth/model_generator.rb', line 36 def add_uniq_to_email_index puts migration_path puts name.downcase.pluralize insert_into_file migration_path, after: "#{name.downcase.pluralize}, :email", force: true do ", unique: true" end end |
#done ⇒ Object
44 45 46 |
# File 'lib/generators/revise_auth/model_generator.rb', line 44 def done readme "README" if behavior == :invoke end |
#generate_model ⇒ Object
17 18 19 20 21 22 23 24 25 |
# File 'lib/generators/revise_auth/model_generator.rb', line 17 def generate_model model_attributess = model_attributes.join(", ").delete(",") puts "Adding #{name}" puts "jets g model #{name} #{model_attributess}" system "jets g model #{name} #{model_attributess}" puts "Adding ApiToken" system "jets g model ApiTokens #{name.downcase}:references token:string:uniq name:string metadata:jsonb transient:boolean last_used_at:datetime expires_at:datetime" # generate :model, name, *model_attributes end |