datalab-generators 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
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: []