Class: AdminModelGenerator
- Inherits:
-
Rails::Generators::NamedBase
- Object
- Rails::Generators::NamedBase
- AdminModelGenerator
- Defined in:
- lib/generators/admin_model/admin_model_generator.rb
Instance Method Summary collapse
- #crate_rails_admin_concern ⇒ Object
- #generate_model ⇒ Object
- #get_translation_file ⇒ Object
- #include_rails_admin ⇒ Object
- #insert_attributes_errors_translation_keys ⇒ Object
- #insert_attributes_translation_keys ⇒ Object
- #inssert_model_translation_keys ⇒ Object
Instance Method Details
#crate_rails_admin_concern ⇒ Object
12 13 14 15 16 17 18 19 20 |
# File 'lib/generators/admin_model/admin_model_generator.rb', line 12 def crate_rails_admin_concern @pascal_name = class_name.singularize @snake_name = file_name.singularize @fields_list = '' @attributes.each do |attribute| @fields_list << "\n field :#{attribute.name}" end template 'admin_model.template', "app/models/concerns/rails_admin/#{@snake_name}.rb" end |
#generate_model ⇒ Object
8 9 10 |
# File 'lib/generators/admin_model/admin_model_generator.rb', line 8 def generate_model generate('model', @_initializer[0].join(' ')) end |
#get_translation_file ⇒ Object
26 27 28 29 30 |
# File 'lib/generators/admin_model/admin_model_generator.rb', line 26 def get_translation_file @ptbr_path = 'config/locales/pt-BR.yml' ptbr = File.read(@ptbr_path) @ptbr_hash = YAML.load(ptbr) end |
#include_rails_admin ⇒ Object
22 23 24 |
# File 'lib/generators/admin_model/admin_model_generator.rb', line 22 def include_rails_admin inject_into_class "app/models/#{@snake_name}.rb", @pascal_name, " include RailsAdmin::#{@pascal_name}\n" end |
#insert_attributes_errors_translation_keys ⇒ Object
54 55 56 57 58 59 60 61 62 63 64 |
# File 'lib/generators/admin_model/admin_model_generator.rb', line 54 def insert_attributes_errors_translation_keys model_attriutes = @attributes.reduce('') do |acc, attribute| "#{acc}\n #{attribute.name}:" end ptbr = File.read(@ptbr_path) inject_into_file @ptbr_path, after: ptbr[/pt-BR:\n(.*\n)* {2}activerecord:\n(.*\n)* {4}errors:\n(.*\n)* {6}models:\n( {8}.+(\n( {10}.+\n)+))+/] do <<-YML #{@snake_name}:\n attributes:#{model_attriutes} YML end end |
#insert_attributes_translation_keys ⇒ Object
42 43 44 45 46 47 48 49 50 51 52 |
# File 'lib/generators/admin_model/admin_model_generator.rb', line 42 def insert_attributes_translation_keys model_attriutes = @attributes.reduce('') do |acc, attribute| "#{acc}\n #{attribute.name}: please fill me" end ptbr = File.read(@ptbr_path) inject_into_file @ptbr_path, after: ptbr[/pt-BR:\n(.*\n)* {2}activerecord:\n(.*\n)* {4}attributes:\n( {6}.+(\n( {8}.+\n)+))+/] do <<-YML #{@snake_name}:#{model_attriutes} YML end end |
#inssert_model_translation_keys ⇒ Object
31 32 33 34 35 36 37 38 39 40 |
# File 'lib/generators/admin_model/admin_model_generator.rb', line 31 def inssert_model_translation_keys ptbr = File.read(@ptbr_path) inject_into_file @ptbr_path, after: ptbr[/pt-BR:\n(.*\n)* {2}activerecord:\n(.*\n)* {4}models:\n( {6}.+(\n( {8}.+\n)+))+/] do <<-YML #{@snake_name}: one: please fill me other: please fill me YML end end |