Commit 467daa7ae40a74675eb63d0195191c150ebb6c78
1 parent
177b3289
Exists in
master
and in
1 other branch
updating blitz
Showing
5 changed files
with
65 additions
and
26 deletions
Show diff stats
vendor/plugins/blitz/README.textile
... | ... | @@ -8,6 +8,7 @@ h2. Generated code may contain |
8 | 8 | * "Shoulda":http://github.com/thoughtbot/shoulda |
9 | 9 | * "Factory Girl":http://github.com/thoughtbot/factory_girl |
10 | 10 | * "Mocha":http://github.com/jferris/mocha |
11 | +* "Formtastic":http://github.com/justinfrench/formtastic | |
11 | 12 | |
12 | 13 | h2. Installation |
13 | 14 | |
... | ... | @@ -73,6 +74,34 @@ h2. View generator |
73 | 74 | |
74 | 75 | $ script/generate view Posts new |
75 | 76 | |
77 | +generates a Formtastic view which reflects on your current schema... | |
78 | + | |
79 | +<pre><code><h1>New post</h1> | |
80 | + | |
81 | +<% semantic_form_for(@post) do |form| %> | |
82 | + <% form.inputs do %> | |
83 | + <%= form.input :title %> | |
84 | + <%= form.input :body %> | |
85 | + <%= form.input :user %> | |
86 | + <% end %> | |
87 | + <% form.buttons do %> | |
88 | + <%= form.commit_button 'Create', | |
89 | + :button_html => { :disable_with => 'Please wait...' } %> | |
90 | + <% end %> | |
91 | +<% end %></code></pre> | |
92 | + | |
93 | +If no ActiveRecord is defined named Post, it will generate... | |
94 | + | |
95 | +<pre><code><h1>New post</h1> | |
96 | + | |
97 | +<% semantic_form_for(@post) do |form| %> | |
98 | + <% form.inputs %> | |
99 | + <% form.buttons do %> | |
100 | + <%= form.commit_button 'Create', | |
101 | + :button_html => { :disable_with => 'Please wait...' } %> | |
102 | + <% end %> | |
103 | +<% end %></code></pre> | |
104 | + | |
76 | 105 | h2. Model generator: belongs_to |
77 | 106 | |
78 | 107 | $ script/generate model post user:belongs_to | ... | ... |
vendor/plugins/blitz/features/step_definitions/view_steps.rb
... | ... | @@ -13,13 +13,12 @@ end |
13 | 13 | When /^a SemiFormal "new" view for "posts" should be generated$/ do |
14 | 14 | assert_generated_file("app/views/posts/new.html.erb") do |
15 | 15 | "<h1>New post</h1>\n\n" << |
16 | - "<% form_for(@post) do |form| %>\n" << | |
17 | - " <%= form.error_messages %>\n" << | |
18 | - " <fieldset class=\"inputs\">\n" << | |
19 | - " </fieldset>\n" << | |
20 | - " <fieldset class=\"buttons\">\n" << | |
21 | - " <%= form.submit 'Create', :disable_with => 'Please wait...' %>\n" << | |
22 | - " </fieldset>\n" << | |
16 | + "<% semantic_form_for(@post) do |form| %>\n" << | |
17 | + " <%= form.inputs %>\n" << | |
18 | + " <% form.buttons do %>\n" << | |
19 | + " <%= form.commit_button 'Create',\n" << | |
20 | + " :button_html => { :disable_with => 'Please wait...' } %>\n" << | |
21 | + " <% end %>\n" << | |
23 | 22 | "<% end %>" |
24 | 23 | end |
25 | 24 | end |
... | ... | @@ -27,16 +26,16 @@ end |
27 | 26 | Then /^a SemiFormal "new" view for "posts" should be generated with fields$/ do |
28 | 27 | assert_generated_file("app/views/posts/new.html.erb") do |
29 | 28 | "<h1>New post</h1>\n\n" << |
30 | - "<% form_for(@post) do |form| %>\n" << | |
31 | - " <%= form.error_messages %>\n" << | |
32 | - " <fieldset class=\"inputs\">\n" << | |
33 | - " <%= form.string :title %>\n" << | |
34 | - " <%= form.text :body %>\n" << | |
35 | - " <%= form.belongs_to :user %>\n" << | |
36 | - " </fieldset>\n" << | |
37 | - " <fieldset class=\"buttons\">\n" << | |
38 | - " <%= form.submit 'Create', :disable_with => 'Please wait...' %>\n" << | |
39 | - " </fieldset>\n" << | |
29 | + "<% semantic_form_for(@post) do |form| %>\n" << | |
30 | + " <% form.inputs do %>\n" << | |
31 | + " <%= form.input :title %>\n" << | |
32 | + " <%= form.input :body %>\n" << | |
33 | + " <%= form.input :user %>\n" << | |
34 | + " <% end %>\n" << | |
35 | + " <% form.buttons do %>\n" << | |
36 | + " <%= form.commit_button 'Create',\n" << | |
37 | + " :button_html => { :disable_with => 'Please wait...' } %>\n" << | |
38 | + " <% end %>\n" << | |
40 | 39 | "<% end %>" |
41 | 40 | end |
42 | 41 | end | ... | ... |
vendor/plugins/blitz/features/support/env.rb
vendor/plugins/blitz/generators/view/templates/new.html.erb
1 | 1 | <h1>New <%= resource %></h1> |
2 | 2 | |
3 | -<%% form_for(@<%= resource %>) do |form| %> | |
4 | - <%%= form.error_messages %> | |
5 | - <fieldset class="inputs"> | |
3 | +<%% semantic_form_for(@<%= resource %>) do |form| %> | |
6 | 4 | <% if active_record_defined? -%> |
5 | + <%% form.inputs do %> | |
7 | 6 | <% columns_for_form.each do |attribute_name, attribute_type| -%> |
8 | - <%%= form.<%= attribute_type %> :<%= attribute_name %> %> | |
7 | + <%%= form.input :<%= attribute_name %> %> | |
9 | 8 | <% end -%> |
9 | + <%% end %> | |
10 | +<% else -%> | |
11 | + <%%= form.inputs %> | |
10 | 12 | <% end -%> |
11 | - </fieldset> | |
12 | - <fieldset class="buttons"> | |
13 | - <%%= form.submit 'Create', :disable_with => 'Please wait...' %> | |
14 | - </fieldset> | |
13 | + <%% form.buttons do %> | |
14 | + <%%= form.commit_button 'Create', | |
15 | + :button_html => { :disable_with => 'Please wait...' } %> | |
16 | + <%% end %> | |
15 | 17 | <%% end %> | ... | ... |