Class: Datagrid::Scaffold

Inherits:
Rails::Generators::NamedBase
  • Object
show all
Defined in:
lib/datagrid/scaffold.rb

Instance Method Summary collapse

Instance Method Details

#create_scaffoldObject



6
7
8
9
10
11
# File 'lib/datagrid/scaffold.rb', line 6

def create_scaffold
  template "grid.rb.erb", "app/grids/#{grid_class_name.underscore}.rb"
  template "controller.rb.erb", "app/controllers/#{grid_controller_name.underscore}.rb"
  template "index.html.erb", "app/views/#{grid_controller_short_name}/index.html.erb"
  route("resources :#{grid_controller_short_name}")
end

#grid_class_nameObject



13
14
15
# File 'lib/datagrid/scaffold.rb', line 13

def grid_class_name
  file_name.camelize.pluralize + "Grid"
end

#grid_controller_nameObject



17
18
19
# File 'lib/datagrid/scaffold.rb', line 17

def grid_controller_name
  grid_controller_short_name.camelize + "Controller"
end

#grid_controller_short_nameObject



21
22
23
# File 'lib/datagrid/scaffold.rb', line 21

def grid_controller_short_name
  file_name.underscore.pluralize
end

#grid_ivar_nameObject



29
30
31
# File 'lib/datagrid/scaffold.rb', line 29

def grid_ivar_name
  grid_class_name.underscore
end

#grid_model_nameObject



25
26
27
# File 'lib/datagrid/scaffold.rb', line 25

def grid_model_name
  file_name.camelize.singularize
end

#grid_route_nameObject



54
55
56
# File 'lib/datagrid/scaffold.rb', line 54

def grid_route_name
  grid_controller_short_name + "_path"
end

#paginate_codeObject



33
34
35
36
37
38
39
40
41
# File 'lib/datagrid/scaffold.rb', line 33

def paginate_code
  if defined?(Kaminari)
    "page(params[:page])"
  elsif defined?(WillPaginate)
    "paginate(:page => params[:page])"
  else
    "paginate_somehow"
  end
end

#pagination_helper_codeObject



43
44
45
46
47
48
49
50
51
52
# File 'lib/datagrid/scaffold.rb', line 43

def pagination_helper_code
  if defined?(Kaminari)
    "paginate(@assets)"
  elsif defined?(WillPaginate)
    "will_paginate(@assets)"
  else
    "some_pagination_helper(@assets)"
  end

end