jrhicks-static-generators 0.2.0 → 0.2.1
Sign up to get free protection for your applications and to get access to all the features.
- data/Manifest +1 -0
- data/Rakefile +1 -1
- data/rails_generators/static_authorization/static_authorization_generator.rb +1 -0
- data/rails_generators/static_gen_specs/templates/generator_specs.rb +11 -0
- data/rails_generators/static_gen_specs/templates/model_gen_specs.rb +24 -7
- data/rails_generators/static_scaffold/templates/paperclip_tokens.rb +4 -0
- data/rails_generators/static_scaffold/templates/view_new.html.erb +26 -6
- data/static-generators.gemspec +2 -2
- metadata +3 -2
data/Manifest
CHANGED
@@ -22,6 +22,7 @@ rails_generators/static_scaffold/templates/helper.rb
|
|
22
22
|
rails_generators/static_scaffold/templates/helper_test.rb
|
23
23
|
rails_generators/static_scaffold/templates/layout.html.erb
|
24
24
|
rails_generators/static_scaffold/templates/model.rb
|
25
|
+
rails_generators/static_scaffold/templates/paperclip_tokens.rb
|
25
26
|
rails_generators/static_scaffold/templates/view_edit.html.erb
|
26
27
|
rails_generators/static_scaffold/templates/view_index.html.erb
|
27
28
|
rails_generators/static_scaffold/templates/view_new.html.erb
|
data/Rakefile
CHANGED
@@ -2,7 +2,7 @@ require 'rubygems'
|
|
2
2
|
require 'rake'
|
3
3
|
require 'echoe'
|
4
4
|
|
5
|
-
Echoe.new('static-generators', '0.2.
|
5
|
+
Echoe.new('static-generators', '0.2.1') do |p|
|
6
6
|
p.project = "staticgenerators"
|
7
7
|
p.description = "Generate attractive interfaces that are easy to edit."
|
8
8
|
p.url = "http://github.com/jrhicks/static-scaffolds"
|
@@ -21,6 +21,17 @@ end
|
|
21
21
|
|
22
22
|
class GeneratorSpecs < GenSpecFactory
|
23
23
|
|
24
|
+
def ascendant_columns
|
25
|
+
if ascendant
|
26
|
+
[ascendant[:key]]
|
27
|
+
else
|
28
|
+
[]
|
29
|
+
end
|
30
|
+
end
|
31
|
+
|
32
|
+
def primary_columns
|
33
|
+
column_specs.keys.select {|k| column_specs[k][:type]==:primary_key }
|
34
|
+
end
|
24
35
|
|
25
36
|
def table_name
|
26
37
|
raise Exception("table_name method not implimented.")
|
@@ -51,7 +51,24 @@ class <%=class_name%>GenSpecs < GeneratorSpecs
|
|
51
51
|
<%end -%>
|
52
52
|
]
|
53
53
|
end
|
54
|
-
|
54
|
+
|
55
|
+
def form_groups
|
56
|
+
[
|
57
|
+
{:group_name=>"<%=model_name.titleize%>",
|
58
|
+
:attributes=> [
|
59
|
+
<%for c in column_names -%>
|
60
|
+
<%if guess_list_columns.include?(c) -%>
|
61
|
+
<%=c.to_sym.inspect%>,
|
62
|
+
<%else -%>
|
63
|
+
# <%=c.to_sym.inspect%>,
|
64
|
+
<%end -%>
|
65
|
+
<%end -%>
|
66
|
+
]},
|
67
|
+
# {:group_name=>"Group 2",
|
68
|
+
# :attributes=> [
|
69
|
+
# ]},
|
70
|
+
]
|
71
|
+
end
|
55
72
|
|
56
73
|
def column_specs
|
57
74
|
{
|
@@ -75,9 +92,12 @@ class <%=class_name%>GenSpecs < GeneratorSpecs
|
|
75
92
|
def file_columns
|
76
93
|
column_specs.select {|k,v| v[:type]==:file or v[:type]==:photo}
|
77
94
|
end
|
95
|
+
|
96
|
+
def safe_form_groups
|
97
|
+
form_groups.map {|group| {:group_name=>group[:group_name], :attributes=>(group[:attributes]-ascendant_columns-primary_columns)}}
|
98
|
+
end
|
78
99
|
|
79
100
|
def belongs_to
|
80
|
-
# {:name=>"foo", :model=>"Foo", :key=>"foo_id"}
|
81
101
|
[
|
82
102
|
<%justifier = CodeJustifier.new(belongs_to_columns) -%>
|
83
103
|
<%justifier.add_parameter {|o| ":name=>#{o.name.slice(0,o.name.length-3).inspect}, "} -%>
|
@@ -89,8 +109,7 @@ class <%=class_name%>GenSpecs < GeneratorSpecs
|
|
89
109
|
]
|
90
110
|
end
|
91
111
|
|
92
|
-
def ascendant
|
93
|
-
# {:name=>"foo", :model=>"Foo", :key=>"foo_id"}
|
112
|
+
def ascendant
|
94
113
|
<%justifier = CodeJustifier.new(belongs_to_columns) -%>
|
95
114
|
<%justifier.add_parameter {|o| ":name=>#{o.name.slice(0,o.name.length-3).inspect}, "} -%>
|
96
115
|
<%justifier.add_parameter {|o| ":model=>#{o.name.slice(0,o.name.length-3).camelize.inspect}, "} -%>
|
@@ -101,7 +120,6 @@ class <%=class_name%>GenSpecs < GeneratorSpecs
|
|
101
120
|
end
|
102
121
|
|
103
122
|
def has_many
|
104
|
-
# {:name=>"foo", :model=>"Foo", :key=>"foo_id"}
|
105
123
|
[
|
106
124
|
<%justifier = CodeJustifier.new(has_many_columns) -%>
|
107
125
|
<%justifier.add_parameter {|o| ":name=>#{o[:table].pluralize.inspect}, "} -%>
|
@@ -113,8 +131,7 @@ class <%=class_name%>GenSpecs < GeneratorSpecs
|
|
113
131
|
]
|
114
132
|
end
|
115
133
|
|
116
|
-
def desendants
|
117
|
-
# {:name=>"foo", :model=>"Foo", :key=>"foo_id"}
|
134
|
+
def desendants
|
118
135
|
[
|
119
136
|
<%justifier = CodeJustifier.new(has_many_columns) -%>
|
120
137
|
<%justifier.add_parameter {|o| ":name=>#{o[:table].pluralize.inspect}, "} -%>
|
@@ -1,18 +1,38 @@
|
|
1
1
|
<%% title "New <%= gen_spec.singular_title %>" %>
|
2
2
|
<h1>New <%= gen_spec.singular_name %></h1>
|
3
3
|
|
4
|
-
<%% form_for(@<%= singular_name %>) do |f| %>
|
4
|
+
<%% form_for(@<%= gen_spec.singular_name %>) do |f| %>
|
5
5
|
<%%= f.error_messages %>
|
6
|
-
|
7
|
-
|
6
|
+
<% if gen_spec.ascendant -%>
|
7
|
+
<%%=f.hidden(<%=gen_spec.singular_name%>, <%=gen_spec.ascendant[:key].inspect%>)
|
8
|
+
<% end %>
|
9
|
+
<% for group in gen_spec.safe_form_groups -%>
|
10
|
+
<h2><%=group[:group_name]%></h2>
|
11
|
+
<% for attribute in group[:attributes] -%>
|
12
|
+
<%options=gen_spec.column_specs[attribute] -%>
|
8
13
|
<p>
|
9
|
-
<%%= f.label
|
10
|
-
|
14
|
+
<%%= f.label <%= options[:label].inspect %> %><br />
|
15
|
+
<% case options[:type] -%>
|
16
|
+
<% when :file -%>
|
17
|
+
<%%= f.file_field :<%= attribute %> %>
|
18
|
+
<% when :string -%>
|
19
|
+
<%%= f.text_field :<%= attribute %> %>
|
20
|
+
<% when :foreign_key -%>
|
21
|
+
<%%= f.text_field :<%= attribute %> %>
|
22
|
+
<% when :photo -%>
|
23
|
+
<%%= f.file_field :<%= attribute %> %>
|
24
|
+
<% when :datetime -%>
|
25
|
+
<%%= f.text_field :<%= attribute %> %>
|
26
|
+
<% end -%>
|
11
27
|
</p>
|
28
|
+
<% end -%>
|
12
29
|
<% end -%>
|
13
30
|
<p>
|
14
31
|
<%%= f.submit 'Create' %>
|
15
32
|
</p>
|
16
33
|
<%% end %>
|
17
34
|
|
18
|
-
<%%= link_to 'Back', <%= plural_name %>_path %>
|
35
|
+
<%%= link_to 'Back', <%= plural_name %>_path %>
|
36
|
+
|
37
|
+
|
38
|
+
|
data/static-generators.gemspec
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
|
3
3
|
Gem::Specification.new do |s|
|
4
4
|
s.name = %q{static-generators}
|
5
|
-
s.version = "0.2.
|
5
|
+
s.version = "0.2.1"
|
6
6
|
|
7
7
|
s.required_rubygems_version = Gem::Requirement.new(">= 1.2") if s.respond_to? :required_rubygems_version=
|
8
8
|
s.authors = ["Jeffrey Hicks"]
|
@@ -10,7 +10,7 @@ Gem::Specification.new do |s|
|
|
10
10
|
s.description = %q{Generate attractive interfaces that are easy to edit.}
|
11
11
|
s.email = %q{jrhicks (at) gmail (dot) com}
|
12
12
|
s.extra_rdoc_files = ["CHANGELOG", "lib/static_generators.rb", "LICENSE", "README.md", "tasks/deployment.rake", "TODO"]
|
13
|
-
s.files = ["CHANGELOG", "lib/static_generators.rb", "LICENSE", "rails_generators/static_app/static_app_generator.rb", "rails_generators/static_app/templates/application_helper.rb", "rails_generators/static_app/templates/layout.html.erb", "rails_generators/static_app/templates/layout_helper.rb", "rails_generators/static_app/templates/sorttable.js", "rails_generators/static_app/templates/static_style.css", "rails_generators/static_app/USAGE", "rails_generators/static_authorization/static_authorization_generator.rb", "rails_generators/static_authorization/templates/migration.rb", "rails_generators/static_authorization/USAGE", "rails_generators/static_gen_specs/static_gen_specs_generator.rb", "rails_generators/static_gen_specs/templates/generator_specs.rb", "rails_generators/static_gen_specs/templates/model_gen_specs.rb", "rails_generators/static_gen_specs/USAGE", "rails_generators/static_scaffold/static_scaffold_generator.rb", "rails_generators/static_scaffold/templates/controller.rb", "rails_generators/static_scaffold/templates/functional_test.rb", "rails_generators/static_scaffold/templates/helper.rb", "rails_generators/static_scaffold/templates/helper_test.rb", "rails_generators/static_scaffold/templates/layout.html.erb", "rails_generators/static_scaffold/templates/model.rb", "rails_generators/static_scaffold/templates/view_edit.html.erb", "rails_generators/static_scaffold/templates/view_index.html.erb", "rails_generators/static_scaffold/templates/view_new.html.erb", "rails_generators/static_scaffold/templates/view_show.html.erb", "rails_generators/static_scaffold/USAGE", "Rakefile", "README.md", "
|
13
|
+
s.files = ["CHANGELOG", "lib/static_generators.rb", "LICENSE", "rails_generators/static_app/static_app_generator.rb", "rails_generators/static_app/templates/application_helper.rb", "rails_generators/static_app/templates/layout.html.erb", "rails_generators/static_app/templates/layout_helper.rb", "rails_generators/static_app/templates/sorttable.js", "rails_generators/static_app/templates/static_style.css", "rails_generators/static_app/USAGE", "rails_generators/static_authorization/static_authorization_generator.rb", "rails_generators/static_authorization/templates/migration.rb", "rails_generators/static_authorization/USAGE", "rails_generators/static_gen_specs/static_gen_specs_generator.rb", "rails_generators/static_gen_specs/templates/generator_specs.rb", "rails_generators/static_gen_specs/templates/model_gen_specs.rb", "rails_generators/static_gen_specs/USAGE", "rails_generators/static_scaffold/static_scaffold_generator.rb", "rails_generators/static_scaffold/templates/controller.rb", "rails_generators/static_scaffold/templates/functional_test.rb", "rails_generators/static_scaffold/templates/helper.rb", "rails_generators/static_scaffold/templates/helper_test.rb", "rails_generators/static_scaffold/templates/layout.html.erb", "rails_generators/static_scaffold/templates/model.rb", "rails_generators/static_scaffold/templates/paperclip_tokens.rb", "rails_generators/static_scaffold/templates/view_edit.html.erb", "rails_generators/static_scaffold/templates/view_index.html.erb", "rails_generators/static_scaffold/templates/view_new.html.erb", "rails_generators/static_scaffold/templates/view_show.html.erb", "rails_generators/static_scaffold/USAGE", "Rakefile", "README.md", "tasks/deployment.rake", "TODO", "USAGE", "Manifest", "static-generators.gemspec"]
|
14
14
|
s.has_rdoc = true
|
15
15
|
s.homepage = %q{http://github.com/jrhicks/static-scaffolds}
|
16
16
|
s.rdoc_options = ["--line-numbers", "--inline-source", "--title", "Static-generators", "--main", "README.md"]
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: jrhicks-static-generators
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jeffrey Hicks
|
@@ -51,6 +51,7 @@ files:
|
|
51
51
|
- rails_generators/static_scaffold/templates/helper_test.rb
|
52
52
|
- rails_generators/static_scaffold/templates/layout.html.erb
|
53
53
|
- rails_generators/static_scaffold/templates/model.rb
|
54
|
+
- rails_generators/static_scaffold/templates/paperclip_tokens.rb
|
54
55
|
- rails_generators/static_scaffold/templates/view_edit.html.erb
|
55
56
|
- rails_generators/static_scaffold/templates/view_index.html.erb
|
56
57
|
- rails_generators/static_scaffold/templates/view_new.html.erb
|
@@ -58,11 +59,11 @@ files:
|
|
58
59
|
- rails_generators/static_scaffold/USAGE
|
59
60
|
- Rakefile
|
60
61
|
- README.md
|
61
|
-
- static-generators.gemspec
|
62
62
|
- tasks/deployment.rake
|
63
63
|
- TODO
|
64
64
|
- USAGE
|
65
65
|
- Manifest
|
66
|
+
- static-generators.gemspec
|
66
67
|
has_rdoc: true
|
67
68
|
homepage: http://github.com/jrhicks/static-scaffolds
|
68
69
|
post_install_message:
|