erb_form 0.1.4 → 0.1.5

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.
@@ -18,10 +18,13 @@ module ErbForm
18
18
  end
19
19
 
20
20
  def field_layouts(attribute_name)
21
+ template_path = caller.select { |line| line.scan(template.view_paths.first.to_s).size > 0 }.first
22
+ template_path = template_path.split('/')[0...-1].join('/').gsub(template.view_paths.first.to_s, '')
23
+
21
24
  file = @field_layout.nil? ? attribute_name.to_s : @field_layout
22
25
  [
23
26
  [ErbForm.forms_path, @field_layout, attribute_name.to_s+'_field'], # forms/custom_layout/attribute_name_field.html.erb
24
- [template.controller_path, file+'_field'], # resourse_path/attribute_name_field.html.erb
27
+ [template_path, file+'_field'], # template_path/attribute_name_field.html.erb
25
28
  [ErbForm.forms_path, @field_layout, 'field'], # forms/custom_layout/field.html.erb
26
29
  [ErbForm.forms_path, 'default', file+'_field'], # forms/attribute_name_field.html.erb
27
30
  [ErbForm.forms_path, 'default', 'field'] # forms/attribute_name/field.html.erb
@@ -1,3 +1,3 @@
1
1
  module ErbForm
2
- VERSION = "0.1.4"
2
+ VERSION = "0.1.5"
3
3
  end
@@ -0,0 +1,3 @@
1
+ <fieldset>
2
+ <%= f.field :name %>
3
+ </fieldset>
@@ -0,0 +1,3 @@
1
+ <div class="field_in_partial">
2
+ <%= form.input attribute_name, input_options %>
3
+ </div>
@@ -0,0 +1,6 @@
1
+ <div class="simple_form_field">
2
+ <%= form.label attribute_name, label_options %>
3
+ <%= form.input attribute_name, input_options %>
4
+ <%= form.hint attribute_name, hint_options %>
5
+ <%= form.full_error attribute_name, error_options %>
6
+ </div>
@@ -0,0 +1,3 @@
1
+ <%= form_for(@blog) do |f| %>
2
+ <%= render :partial => 'blogs/partials/partial', :locals => {:f => f}%>
3
+ <% end %>
@@ -0,0 +1,16 @@
1
+ require "spec_helper"
2
+
3
+ describe "blogs/render_field_from_a_partial" do
4
+ before(:each) do
5
+ assign(:blog, stub_model(Blog,
6
+ :name => "",
7
+ ).as_new_record)
8
+ end
9
+
10
+ describe "when the as option is passed" do
11
+ it "finds the correct layout file" do
12
+ render
13
+ rendered.should have_selector "div", :class => "field_in_partial"
14
+ end
15
+ end
16
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: erb_form
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.4
4
+ version: 0.1.5
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -13,7 +13,7 @@ date: 2012-02-24 00:00:00.000000000Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: simple_form
16
- requirement: &2152479800 !ruby/object:Gem::Requirement
16
+ requirement: &2152017640 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,7 +21,7 @@ dependencies:
21
21
  version: 2.0.0.rc
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *2152479800
24
+ version_requirements: *2152017640
25
25
  description: Wrap form helper methods in re-usable erb templates.
26
26
  email:
27
27
  - 23inhouse@gmail.com
@@ -47,13 +47,17 @@ files:
47
47
  - spec/test_app/app/models/blog.rb
48
48
  - spec/test_app/app/views/blogs/double_render_error.html.erb
49
49
  - spec/test_app/app/views/blogs/double_render_field.html.erb
50
- - spec/test_app/app/views/blogs/extra_options_field.html
50
+ - spec/test_app/app/views/blogs/extra_options_field.html.erb
51
51
  - spec/test_app/app/views/blogs/find_defaults.html.erb
52
52
  - spec/test_app/app/views/blogs/find_layouts.html.erb
53
53
  - spec/test_app/app/views/blogs/legacy_field.html.erb
54
54
  - spec/test_app/app/views/blogs/missing_attribute_template_error.html.erb
55
55
  - spec/test_app/app/views/blogs/missing_layout_template_error.html.erb
56
56
  - spec/test_app/app/views/blogs/name_field.html.erb
57
+ - spec/test_app/app/views/blogs/partials/_partial.html.erb
58
+ - spec/test_app/app/views/blogs/partials/name_field.html.erb
59
+ - spec/test_app/app/views/blogs/partials/simple_form_field.html.erb
60
+ - spec/test_app/app/views/blogs/render_field_from_a_partial.html.erb
57
61
  - spec/test_app/app/views/blogs/render_field_with_extra_options.html.erb
58
62
  - spec/test_app/app/views/blogs/render_input_as_a_collection.html.erb
59
63
  - spec/test_app/app/views/blogs/render_input_as_different_type.html.erb
@@ -92,9 +96,10 @@ files:
92
96
  - spec/test_app/spec/views/blogs/find_layouts.html.erb_spec.rb
93
97
  - spec/test_app/spec/views/blogs/missing_attribute_template_error.html.erb_spec.rb
94
98
  - spec/test_app/spec/views/blogs/missing_layout_template_error.html.erb_spec.rb
99
+ - spec/test_app/spec/views/blogs/render_field_from_a_partial.html.erb_spec.rb
95
100
  - spec/test_app/spec/views/blogs/render_field_with_extra_options.html.erb_spec.rb
96
101
  - spec/test_app/spec/views/blogs/render_input_as_a_collection.html.erb_spec.rb
97
- - spec/test_app/spec/views/blogs/render_input_as_different_type.html.erb_spec
102
+ - spec/test_app/spec/views/blogs/render_input_as_different_type.html.erb_spec.rb
98
103
  - spec/test_app/spec/views/blogs/render_multiple_layouts.html.erb_spec.rb
99
104
  - spec/test_app/spec/views/blogs/render_simple_form_with_options.html.erb_spec.rb
100
105
  - spec/test_app/spec/views/blogs/render_with_simple_form.html.erb_spec.rb
@@ -134,13 +139,17 @@ test_files:
134
139
  - spec/test_app/app/models/blog.rb
135
140
  - spec/test_app/app/views/blogs/double_render_error.html.erb
136
141
  - spec/test_app/app/views/blogs/double_render_field.html.erb
137
- - spec/test_app/app/views/blogs/extra_options_field.html
142
+ - spec/test_app/app/views/blogs/extra_options_field.html.erb
138
143
  - spec/test_app/app/views/blogs/find_defaults.html.erb
139
144
  - spec/test_app/app/views/blogs/find_layouts.html.erb
140
145
  - spec/test_app/app/views/blogs/legacy_field.html.erb
141
146
  - spec/test_app/app/views/blogs/missing_attribute_template_error.html.erb
142
147
  - spec/test_app/app/views/blogs/missing_layout_template_error.html.erb
143
148
  - spec/test_app/app/views/blogs/name_field.html.erb
149
+ - spec/test_app/app/views/blogs/partials/_partial.html.erb
150
+ - spec/test_app/app/views/blogs/partials/name_field.html.erb
151
+ - spec/test_app/app/views/blogs/partials/simple_form_field.html.erb
152
+ - spec/test_app/app/views/blogs/render_field_from_a_partial.html.erb
144
153
  - spec/test_app/app/views/blogs/render_field_with_extra_options.html.erb
145
154
  - spec/test_app/app/views/blogs/render_input_as_a_collection.html.erb
146
155
  - spec/test_app/app/views/blogs/render_input_as_different_type.html.erb
@@ -179,9 +188,10 @@ test_files:
179
188
  - spec/test_app/spec/views/blogs/find_layouts.html.erb_spec.rb
180
189
  - spec/test_app/spec/views/blogs/missing_attribute_template_error.html.erb_spec.rb
181
190
  - spec/test_app/spec/views/blogs/missing_layout_template_error.html.erb_spec.rb
191
+ - spec/test_app/spec/views/blogs/render_field_from_a_partial.html.erb_spec.rb
182
192
  - spec/test_app/spec/views/blogs/render_field_with_extra_options.html.erb_spec.rb
183
193
  - spec/test_app/spec/views/blogs/render_input_as_a_collection.html.erb_spec.rb
184
- - spec/test_app/spec/views/blogs/render_input_as_different_type.html.erb_spec
194
+ - spec/test_app/spec/views/blogs/render_input_as_different_type.html.erb_spec.rb
185
195
  - spec/test_app/spec/views/blogs/render_multiple_layouts.html.erb_spec.rb
186
196
  - spec/test_app/spec/views/blogs/render_simple_form_with_options.html.erb_spec.rb
187
197
  - spec/test_app/spec/views/blogs/render_with_simple_form.html.erb_spec.rb