Class: Spotlight::ScaffoldResource

Inherits:
Rails::Generators::NamedBase
  • Object
show all
Defined in:
lib/generators/spotlight/scaffold_resource_generator.rb

Overview

spotlight:scaffold_resource generator

Instance Method Summary collapse

Instance Method Details

#create_controllerObject



31
32
33
34
35
36
37
38
39
40
41
# File 'lib/generators/spotlight/scaffold_resource_generator.rb', line 31

def create_controller
  create_file "app/controllers/#{file_name}_resources_controller.rb", "    class \#{class_name}ResourcesController < Spotlight::ResourcesController\n      private\n\n      def resource_class\n        \#{class_name}Resource\n      end\n    end\n  FILE\nend\n".strip_heredoc

#create_document_builderObject



10
11
12
13
14
15
16
17
18
19
20
21
# File 'lib/generators/spotlight/scaffold_resource_generator.rb', line 10

def create_document_builder
  create_file "app/services/#{file_name}_builder.rb", "    class \#{class_name}Builder < Spotlight::SolrDocumentBuilder\n      def to_solr\n        return to_enum(:to_solr) unless block_given?\n\n        # TODO: your implementation here\n        # yield { id: resource.id }\n      end\n    end\n  FILE\nend\n".strip_heredoc

#create_formObject



43
44
45
46
47
48
49
50
51
52
53
54
55
# File 'lib/generators/spotlight/scaffold_resource_generator.rb', line 43

def create_form
  create_file "app/views/#{file_name}_resources/_form.html.erb", "  <%= bootstrap_form_for([current_exhibit, @resource.becomes(\#{class_name}Resource)], as: :resource) do |f| %>\n    <%= f.text_field :url  %>\n    <div class=\"form-actions\">\n      <div class=\"primary-actions\">\n        <%= cancel_link @resource, :back, class: 'btn btn-default' %>\n        <%= f.submit t('.add_item'), class: 'btn btn-primary' %>\n      </div>\n    </div>\n  <% end if can? :manage, @resource %>\n  FILE\nend\n".strip_heredoc

#create_modelObject



23
24
25
26
27
28
29
# File 'lib/generators/spotlight/scaffold_resource_generator.rb', line 23

def create_model
  create_file "app/models/#{file_name}_resource.rb", "    class \#{class_name}Resource < Spotlight::Resource\n      self.document_builder_class = \#{class_name}Builder\n    end\n  FILE\nend\n".strip_heredoc