Class: Rails::PrefabGenerator

Inherits:
Generators::NamedBase
  • Object
show all
Defined in:
lib/generators/rails/prefab/prefab_generator.rb

Instance Method Summary collapse

Instance Method Details

#create_datatable_fileObject



9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
# File 'lib/generators/rails/prefab/prefab_generator.rb', line 9

def create_datatable_file
  create_file "app/datatables/#{file_name}_datatable.rb", "class \#{class_name}Datatable < BaseDatatable\ndelegate :current_user, to: :@view\n\ndef as_json(options = {})\n  {\n    sEcho: params[:sEcho].to_i,\n    iTotalRecords: \#{class_name.singularize}.count,\n    iTotalDisplayRecords: \#{plural_name}.total_count,\n    aaData: data\n  }\nend\n\nprivate\ndef data\n  \#{plural_name}.map do |\#{plural_name.singularize}|\n    [\n      link_to(\#{plural_name.singularize}.name, \#{plural_name.singularize}),\n      links(\#{plural_name.singularize})\n    ]\n  end\nend\n\ndef \#{plural_name}\n  @\#{plural_name} || fetch_\#{plural_name}\nend\n\ndef fetch_\#{plural_name}\n  search_columns = ['\#{plural_name}.name']\n  \#{plural_name} = \#{class_name.singularize}.unscoped.select(columns).order(order_by(columns))\n  \#{plural_name} = \#{plural_name}.page(page_count).per(per_page)\nend\n\ndef columns\n  %w['\#{plural_name}.name']\nend\n\ndef exceptions\n  %w['\#{plural_name}.id']\nend\nend\n  FILE\nend\n"

#generate_coffeescriptObject



5
6
7
# File 'lib/generators/rails/prefab/prefab_generator.rb', line 5

def generate_coffeescript
  template "javascript.js.coffee", "app/assets/javascripts/#{file_name.underscore}.js.coffee" if options.coffeescript?
end