datalab-generators 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (51) hide show
  1. data/CHANGELOG +3 -0
  2. data/Gemfile +2 -0
  3. data/Gemfile.lock +116 -0
  4. data/LICENSE +20 -0
  5. data/README.markdown +25 -0
  6. data/Rakefile +4 -0
  7. data/lib/generators/datalab.rb +28 -0
  8. data/lib/generators/datalab/administrators/USAGE +1 -0
  9. data/lib/generators/datalab/administrators/administrators_generator.rb +14 -0
  10. data/lib/generators/datalab/administrators/templates/administrators.rb +1 -0
  11. data/lib/generators/datalab/administrators/templates/administrators.yml +2 -0
  12. data/lib/generators/datalab/layout/USAGE +3 -0
  13. data/lib/generators/datalab/layout/layout_generator.rb +35 -0
  14. data/lib/generators/datalab/layout/templates/admin.css.scss +83 -0
  15. data/lib/generators/datalab/layout/templates/admin.html.erb +19 -0
  16. data/lib/generators/datalab/layout/templates/admin_helper.rb +18 -0
  17. data/lib/generators/datalab/layout/templates/layout.html.erb +19 -0
  18. data/lib/generators/datalab/layout/templates/layout_helper.rb +22 -0
  19. data/lib/generators/datalab/layout/templates/public.css.scss +83 -0
  20. data/lib/generators/datalab/layout/templates/public.html.erb +19 -0
  21. data/lib/generators/datalab/layout/templates/public_helper.rb +18 -0
  22. data/lib/generators/datalab/layout/templates/stylesheet.css.scss +83 -0
  23. data/lib/generators/datalab/scaffold/USAGE +51 -0
  24. data/lib/generators/datalab/scaffold/scaffold_generator.rb +301 -0
  25. data/lib/generators/datalab/scaffold/templates/actions/create.rb +8 -0
  26. data/lib/generators/datalab/scaffold/templates/actions/destroy.rb +5 -0
  27. data/lib/generators/datalab/scaffold/templates/actions/edit.rb +3 -0
  28. data/lib/generators/datalab/scaffold/templates/actions/index.rb +3 -0
  29. data/lib/generators/datalab/scaffold/templates/actions/new.rb +3 -0
  30. data/lib/generators/datalab/scaffold/templates/actions/show.rb +3 -0
  31. data/lib/generators/datalab/scaffold/templates/actions/update.rb +8 -0
  32. data/lib/generators/datalab/scaffold/templates/controller.rb +3 -0
  33. data/lib/generators/datalab/scaffold/templates/fixtures.yml +9 -0
  34. data/lib/generators/datalab/scaffold/templates/helper.rb +2 -0
  35. data/lib/generators/datalab/scaffold/templates/migration.rb +16 -0
  36. data/lib/generators/datalab/scaffold/templates/model.rb +4 -0
  37. data/lib/generators/datalab/scaffold/templates/tests/rspec/actions/create.rb +11 -0
  38. data/lib/generators/datalab/scaffold/templates/tests/rspec/actions/destroy.rb +6 -0
  39. data/lib/generators/datalab/scaffold/templates/tests/rspec/actions/edit.rb +4 -0
  40. data/lib/generators/datalab/scaffold/templates/tests/rspec/actions/index.rb +4 -0
  41. data/lib/generators/datalab/scaffold/templates/tests/rspec/actions/new.rb +4 -0
  42. data/lib/generators/datalab/scaffold/templates/tests/rspec/actions/show.rb +4 -0
  43. data/lib/generators/datalab/scaffold/templates/tests/rspec/actions/update.rb +11 -0
  44. data/lib/generators/datalab/scaffold/templates/tests/rspec/controller.rb +8 -0
  45. data/lib/generators/datalab/scaffold/templates/tests/rspec/model.rb +7 -0
  46. data/lib/generators/datalab/scaffold/templates/views/erb/_form.html.erb +10 -0
  47. data/lib/generators/datalab/scaffold/templates/views/erb/edit.html.erb +14 -0
  48. data/lib/generators/datalab/scaffold/templates/views/erb/index.html.erb +29 -0
  49. data/lib/generators/datalab/scaffold/templates/views/erb/new.html.erb +7 -0
  50. data/lib/generators/datalab/scaffold/templates/views/erb/show.html.erb +20 -0
  51. metadata +119 -0
@@ -0,0 +1,8 @@
1
+ def create
2
+ @<%= instance_name %> = <%= class_name %>.new(params[:<%= instance_name %>])
3
+ if @<%= instance_name %>.save
4
+ redirect_to <%= item_url %>, :notice => "Successfully created <%= class_name.underscore.humanize.downcase %>."
5
+ else
6
+ render :new
7
+ end
8
+ end
@@ -0,0 +1,5 @@
1
+ def destroy
2
+ @<%= instance_name %> = <%= class_name %>.find(params[:id])
3
+ @<%= instance_name %>.destroy
4
+ redirect_to <%= items_url %>, :notice => "Successfully destroyed <%= class_name.underscore.humanize.downcase %>."
5
+ end
@@ -0,0 +1,3 @@
1
+ def edit
2
+ @<%= instance_name %> = <%= class_name %>.find(params[:id])
3
+ end
@@ -0,0 +1,3 @@
1
+ def index
2
+ @<%= instances_name %> = <%= class_name %>.all
3
+ end
@@ -0,0 +1,3 @@
1
+ def new
2
+ @<%= instance_name %> = <%= class_name %>.new
3
+ end
@@ -0,0 +1,3 @@
1
+ def show
2
+ @<%= instance_name %> = <%= class_name %>.find(params[:id])
3
+ end
@@ -0,0 +1,8 @@
1
+ def update
2
+ @<%= instance_name %> = <%= class_name %>.find(params[:id])
3
+ if @<%= instance_name %>.update_attributes(params[:<%= instance_name %>])
4
+ redirect_to <%= item_url %>, :notice => "Successfully updated <%= class_name.underscore.humanize.downcase %>."
5
+ else
6
+ render :edit
7
+ end
8
+ end
@@ -0,0 +1,3 @@
1
+ class <%= plural_class_name %>Controller < ApplicationController
2
+ <%= controller_methods :actions %>
3
+ end
@@ -0,0 +1,9 @@
1
+ one:
2
+ <%- for attribute in model_attributes -%>
3
+ <%= attribute.name %>: <%= attribute.default %>
4
+ <%- end -%>
5
+
6
+ two:
7
+ <%- for attribute in model_attributes -%>
8
+ <%= attribute.name %>: <%= attribute.default %>
9
+ <%- end -%>
@@ -0,0 +1,2 @@
1
+ module <%= plural_class_name %>Helper
2
+ end
@@ -0,0 +1,16 @@
1
+ class Create<%= class_name.pluralize.delete('::') %> < ActiveRecord::Migration
2
+ def self.up
3
+ create_table :<%= table_name || plural_name.split('/').last %> do |t|
4
+ <%- for attribute in model_attributes -%>
5
+ t.<%= attribute.type %> :<%= attribute.name %>
6
+ <%- end -%>
7
+ <%- unless options[:skip_timestamps] -%>
8
+ t.timestamps
9
+ <%- end -%>
10
+ end
11
+ end
12
+
13
+ def self.down
14
+ drop_table :<%= table_name || plural_name.split('/').last %>
15
+ end
16
+ end
@@ -0,0 +1,4 @@
1
+ class <%= class_name %> < ActiveRecord::Base
2
+ <%= " set_table_name :#{table_name}\n" if table_name -%>
3
+ attr_accessible <%= model_attributes.map { |a| ":#{a.name}" }.join(", ") %>
4
+ end
@@ -0,0 +1,11 @@
1
+ it "create action should render new template when model is invalid" do
2
+ <%= class_name %>.any_instance.stubs(:valid?).returns(false)
3
+ post :create
4
+ response.should render_template(:new)
5
+ end
6
+
7
+ it "create action should redirect when model is valid" do
8
+ <%= class_name %>.any_instance.stubs(:valid?).returns(true)
9
+ post :create
10
+ response.should redirect_to(<%= item_path_for_spec('url') %>)
11
+ end
@@ -0,0 +1,6 @@
1
+ it "destroy action should destroy model and redirect to index action" do
2
+ <%= instance_name %> = <%= class_name %>.first
3
+ delete :destroy, :id => <%= instance_name %>
4
+ response.should redirect_to(<%= items_url %>)
5
+ <%= class_name %>.exists?(<%= instance_name %>.id).should be_false
6
+ end
@@ -0,0 +1,4 @@
1
+ it "edit action should render edit template" do
2
+ get :edit, :id => <%= class_name %>.first
3
+ response.should render_template(:edit)
4
+ end
@@ -0,0 +1,4 @@
1
+ it "index action should render index template" do
2
+ get :index
3
+ response.should render_template(:index)
4
+ end
@@ -0,0 +1,4 @@
1
+ it "new action should render new template" do
2
+ get :new
3
+ response.should render_template(:new)
4
+ end
@@ -0,0 +1,4 @@
1
+ it "show action should render show template" do
2
+ get :show, :id => <%= class_name %>.first
3
+ response.should render_template(:show)
4
+ end
@@ -0,0 +1,11 @@
1
+ it "update action should render edit template when model is invalid" do
2
+ <%= class_name %>.any_instance.stubs(:valid?).returns(false)
3
+ put :update, :id => <%= class_name %>.first
4
+ response.should render_template(:edit)
5
+ end
6
+
7
+ it "update action should redirect when model is valid" do
8
+ <%= class_name %>.any_instance.stubs(:valid?).returns(true)
9
+ put :update, :id => <%= class_name %>.first
10
+ response.should redirect_to(<%= item_path_for_spec('url') %>)
11
+ end
@@ -0,0 +1,8 @@
1
+ require File.dirname(__FILE__) + '/../spec_helper'
2
+
3
+ describe <%= plural_class_name %>Controller do
4
+ fixtures :all
5
+ render_views
6
+
7
+ <%= controller_methods 'tests/rspec/actions' %>
8
+ end
@@ -0,0 +1,7 @@
1
+ require File.dirname(__FILE__) + '/../spec_helper'
2
+
3
+ describe <%= class_name %> do
4
+ it "should be valid" do
5
+ <%= class_name %>.new.should be_valid
6
+ end
7
+ end
@@ -0,0 +1,10 @@
1
+ <%%= form_for <%= item_path :instance_variable => true %> do |f| %>
2
+ <%%= f.error_messages %>
3
+ <%- for attribute in model_attributes -%>
4
+ <div class="field">
5
+ <%%= f.label "<%= attribute.name %>:" %>
6
+ <%%= f.<%= attribute.field_type %> :<%= attribute.name %> %>
7
+ </div>
8
+ <%- end -%>
9
+ <div class="actions"><%%= f.submit %></div>
10
+ <%% end %>
@@ -0,0 +1,14 @@
1
+ <%% title "Edit <%= singular_name.titleize %>" %>
2
+
3
+ <%= render_form %>
4
+
5
+ <%- if actions? :show, :index -%>
6
+ <p>
7
+ <%- if action? :show -%>
8
+ <%%= link_to "Show", <%= item_path :instance_variable => true %> %> |
9
+ <%- end -%>
10
+ <%- if action? :index -%>
11
+ <%%= link_to "View All", <%= items_path %> %>
12
+ <%- end -%>
13
+ </p>
14
+ <%- end -%>
@@ -0,0 +1,29 @@
1
+ <%% title "<%= plural_name.titleize %>" %>
2
+
3
+ <table>
4
+ <tr>
5
+ <%- for attribute in model_attributes -%>
6
+ <th><%= attribute.human_name.titleize %></th>
7
+ <%- end -%>
8
+ </tr>
9
+ <%% for <%= instance_name %> in @<%= instances_name %> %>
10
+ <tr>
11
+ <%- for attribute in model_attributes -%>
12
+ <td><%%= <%= instance_name %>.<%= attribute.name %> %></td>
13
+ <%- end -%>
14
+ <%- if action? :show -%>
15
+ <td><%%= link_to "Show", <%= item_path %> %></td>
16
+ <%- end -%>
17
+ <%- if action? :edit -%>
18
+ <td><%%= link_to "Edit", <%= item_path :action => :edit %> %></td>
19
+ <%- end -%>
20
+ <%- if action? :destroy -%>
21
+ <td><%%= link_to "Destroy", <%= item_path %>, :confirm => 'Are you sure?', :method => :delete %></td>
22
+ <%- end -%>
23
+ </tr>
24
+ <%% end %>
25
+ </table>
26
+
27
+ <%- if action? :new -%>
28
+ <p><%%= link_to "New <%= singular_name.titleize %>", <%= item_path :action => :new %> %></p>
29
+ <%- end -%>
@@ -0,0 +1,7 @@
1
+ <%% title "New <%= singular_name.titleize %>" %>
2
+
3
+ <%= render_form %>
4
+
5
+ <%- if action? :index -%>
6
+ <p><%%= link_to "Back to List", <%= items_path %> %></p>
7
+ <%- end -%>
@@ -0,0 +1,20 @@
1
+ <%% title "<%= singular_name.titleize %>" %>
2
+
3
+ <%- for attribute in model_attributes -%>
4
+ <p>
5
+ <strong><%= attribute.human_name.titleize %>:</strong>
6
+ <%%= @<%= instance_name %>.<%= attribute.name %> %>
7
+ </p>
8
+ <%- end -%>
9
+
10
+ <p>
11
+ <%- if action? :edit -%>
12
+ <%%= link_to "Edit", <%= item_path :action => :edit, :instance_variable => true %> %> |
13
+ <%- end -%>
14
+ <%- if action? :destroy -%>
15
+ <%%= link_to "Destroy", <%= item_path :instance_variable => true %>, :confirm => 'Are you sure?', :method => :delete %> |
16
+ <%- end -%>
17
+ <%- if action? :index -%>
18
+ <%%= link_to "View All", <%= items_path %> %>
19
+ <%- end -%>
20
+ </p>
metadata ADDED
@@ -0,0 +1,119 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: datalab-generators
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ prerelease:
6
+ platform: ruby
7
+ authors:
8
+ - dataLAB
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+ date: 2011-11-09 00:00:00.000000000 -05:00
13
+ default_executable:
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
16
+ name: rails
17
+ requirement: &2153604260 !ruby/object:Gem::Requirement
18
+ none: false
19
+ requirements:
20
+ - - ~>
21
+ - !ruby/object:Gem::Version
22
+ version: 3.1.1
23
+ type: :development
24
+ prerelease: false
25
+ version_requirements: *2153604260
26
+ - !ruby/object:Gem::Dependency
27
+ name: sqlite3-ruby
28
+ requirement: &2153603780 !ruby/object:Gem::Requirement
29
+ none: false
30
+ requirements:
31
+ - - ~>
32
+ - !ruby/object:Gem::Version
33
+ version: 1.3.3
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: *2153603780
37
+ description: Rails generator scripts designed to be used as a starting point with
38
+ default dataLAB projects.
39
+ email: info@datalabprojects.com
40
+ executables: []
41
+ extensions: []
42
+ extra_rdoc_files: []
43
+ files:
44
+ - lib/generators/datalab/administrators/administrators_generator.rb
45
+ - lib/generators/datalab/administrators/templates/administrators.rb
46
+ - lib/generators/datalab/administrators/templates/administrators.yml
47
+ - lib/generators/datalab/administrators/USAGE
48
+ - lib/generators/datalab/layout/layout_generator.rb
49
+ - lib/generators/datalab/layout/templates/admin.css.scss
50
+ - lib/generators/datalab/layout/templates/admin.html.erb
51
+ - lib/generators/datalab/layout/templates/admin_helper.rb
52
+ - lib/generators/datalab/layout/templates/layout.html.erb
53
+ - lib/generators/datalab/layout/templates/layout_helper.rb
54
+ - lib/generators/datalab/layout/templates/public.css.scss
55
+ - lib/generators/datalab/layout/templates/public.html.erb
56
+ - lib/generators/datalab/layout/templates/public_helper.rb
57
+ - lib/generators/datalab/layout/templates/stylesheet.css.scss
58
+ - lib/generators/datalab/layout/USAGE
59
+ - lib/generators/datalab/scaffold/scaffold_generator.rb
60
+ - lib/generators/datalab/scaffold/templates/actions/create.rb
61
+ - lib/generators/datalab/scaffold/templates/actions/destroy.rb
62
+ - lib/generators/datalab/scaffold/templates/actions/edit.rb
63
+ - lib/generators/datalab/scaffold/templates/actions/index.rb
64
+ - lib/generators/datalab/scaffold/templates/actions/new.rb
65
+ - lib/generators/datalab/scaffold/templates/actions/show.rb
66
+ - lib/generators/datalab/scaffold/templates/actions/update.rb
67
+ - lib/generators/datalab/scaffold/templates/controller.rb
68
+ - lib/generators/datalab/scaffold/templates/fixtures.yml
69
+ - lib/generators/datalab/scaffold/templates/helper.rb
70
+ - lib/generators/datalab/scaffold/templates/migration.rb
71
+ - lib/generators/datalab/scaffold/templates/model.rb
72
+ - lib/generators/datalab/scaffold/templates/tests/rspec/actions/create.rb
73
+ - lib/generators/datalab/scaffold/templates/tests/rspec/actions/destroy.rb
74
+ - lib/generators/datalab/scaffold/templates/tests/rspec/actions/edit.rb
75
+ - lib/generators/datalab/scaffold/templates/tests/rspec/actions/index.rb
76
+ - lib/generators/datalab/scaffold/templates/tests/rspec/actions/new.rb
77
+ - lib/generators/datalab/scaffold/templates/tests/rspec/actions/show.rb
78
+ - lib/generators/datalab/scaffold/templates/tests/rspec/actions/update.rb
79
+ - lib/generators/datalab/scaffold/templates/tests/rspec/controller.rb
80
+ - lib/generators/datalab/scaffold/templates/tests/rspec/model.rb
81
+ - lib/generators/datalab/scaffold/templates/views/erb/_form.html.erb
82
+ - lib/generators/datalab/scaffold/templates/views/erb/edit.html.erb
83
+ - lib/generators/datalab/scaffold/templates/views/erb/index.html.erb
84
+ - lib/generators/datalab/scaffold/templates/views/erb/new.html.erb
85
+ - lib/generators/datalab/scaffold/templates/views/erb/show.html.erb
86
+ - lib/generators/datalab/scaffold/USAGE
87
+ - lib/generators/datalab.rb
88
+ - CHANGELOG
89
+ - Gemfile
90
+ - Gemfile.lock
91
+ - LICENSE
92
+ - Rakefile
93
+ - README.markdown
94
+ has_rdoc: true
95
+ homepage: http://github.com/datalab/datalab-generators
96
+ licenses: []
97
+ post_install_message:
98
+ rdoc_options: []
99
+ require_paths:
100
+ - lib
101
+ required_ruby_version: !ruby/object:Gem::Requirement
102
+ none: false
103
+ requirements:
104
+ - - ! '>='
105
+ - !ruby/object:Gem::Version
106
+ version: '0'
107
+ required_rubygems_version: !ruby/object:Gem::Requirement
108
+ none: false
109
+ requirements:
110
+ - - ! '>='
111
+ - !ruby/object:Gem::Version
112
+ version: 1.3.4
113
+ requirements: []
114
+ rubyforge_project: datalab-generators
115
+ rubygems_version: 1.6.2
116
+ signing_key:
117
+ specification_version: 3
118
+ summary: dataLAB default generator scripts.
119
+ test_files: []