Class: Contour::ScaffoldGenerator

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

Instance Method Summary collapse

Instance Method Details

#columnsObject



39
40
41
42
43
44
45
# File 'lib/generators/contour/scaffold/scaffold_generator.rb', line 39

def columns
  begin
    resource_name.camelize.constantize.columns.reject{|c| ['id', 'created_at', 'updated_at'].include?(c.name)}.collect{|c| ::Rails::Generators::GeneratedAttribute.new(c.name, c.type)}
  rescue NoMethodError
    []
  end
end

#date_columnsObject



47
48
49
# File 'lib/generators/contour/scaffold/scaffold_generator.rb', line 47

def date_columns
  self.columns.select{|c| c.field_type == :date_select}
end

#generate_viewsObject



51
52
53
54
55
56
57
# File 'lib/generators/contour/scaffold/scaffold_generator.rb', line 51

def generate_views
  ['_form.html.erb', 'new.html.erb', 'edit.html.erb', 'show.html.erb', 'index.html.erb'].each do |view|
    template view, "app/views/#{resource_name_plural}/#{view}"
  end
  template '_paginate.html.erb', "app/views/#{resource_name_plural}/_#{resource_name_plural}.html.erb"
  template 'controller.rb', "app/controllers/#{resource_name_plural}_controller.rb"
end

#resource_class_nameObject

“ProjectUser”



15
16
17
# File 'lib/generators/contour/scaffold/scaffold_generator.rb', line 15

def resource_class_name
  resource_name.camelize
end

#resource_class_name_pluralObject

“ProjectUsers”



20
21
22
# File 'lib/generators/contour/scaffold/scaffold_generator.rb', line 20

def resource_class_name_plural
  resource_name.camelize.pluralize
end

#resource_nameObject

“project_user”



10
11
12
# File 'lib/generators/contour/scaffold/scaffold_generator.rb', line 10

def resource_name
  name.underscore
end

#resource_name_pluralObject

“project_users”



25
26
27
# File 'lib/generators/contour/scaffold/scaffold_generator.rb', line 25

def resource_name_plural
  resource_name.pluralize
end

#resource_titleObject

“Project User”



30
31
32
# File 'lib/generators/contour/scaffold/scaffold_generator.rb', line 30

def resource_title
  resource_name.titleize
end

#resource_title_pluralObject

“Project Users”



35
36
37
# File 'lib/generators/contour/scaffold/scaffold_generator.rb', line 35

def resource_title_plural
  resource_title.pluralize
end