Class: Infold::ModelGenerator
- Inherits:
-
Rails::Generators::NamedBase
- Object
- Rails::Generators::NamedBase
- Infold::ModelGenerator
- Defined in:
- lib/generators/infold/model/model_generator.rb
Instance Method Summary collapse
Instance Method Details
#create_decorator_file ⇒ Object
41 42 43 44 45 46 |
# File 'lib/generators/infold/model/model_generator.rb', line 41 def create_decorator_file base_path = "#{@dist_path}/app/decorators/#{@ns_snake}" file_path = File.join(base_path, "#{@model.name.underscore}_decorator.rb") File.delete(file_path) if File.exist?(file_path) template "decorator.rb", file_path end |
#create_model_file ⇒ Object
34 35 36 37 38 39 |
# File 'lib/generators/infold/model/model_generator.rb', line 34 def create_model_file base_path = "#{@dist_path}/app/models/#{@ns_snake}" model_file_path = File.join(base_path, "#{@model.name.underscore}.rb") File.delete(model_file_path) if File.exist?(model_file_path) template "model.rb", model_file_path, encoding: :utf8 end |
#setup ⇒ Object
5 6 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 |
# File 'lib/generators/infold/model/model_generator.rb', line 5 def setup raise '' if name.to_i == -1 @model = Model.includes( :columns, :attachment_fields, :associations, :child_model_associations, :child_models, :parent_model_associations, :parent_models). find_by(id: name.to_i) raise "テーブルが見つかりません: #{name}" if @model.blank? @app = App.includes( app_view_index: [search_result_columns: :model_column, search_conditions: :model_column], app_view_show: [show_columns: :model_column, show_associations: [show_association_columns: :model_column]], app_view_form: [form_columns: :model_column, form_associations: [form_association_columns: :model_column]], app_view_modal: [search_result_columns: :model_column, search_conditions: :model_column]).find_by(model: @model) @model = ActiveDecorator::Decorator.instance.decorate(@model) @app = ActiveDecorator::Decorator.instance.decorate(@app) @dist_path = Rails.root ns = Project.first.namespace @ns_camel = ns.camelize @ns_snake = ns.underscore end |