nested_form 0.3.1 → 0.3.2

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 (42) hide show
  1. data/CHANGELOG.rdoc +15 -0
  2. data/Gemfile +2 -9
  3. data/README.md +28 -1
  4. data/lib/nested_form/builder_mixin.rb +4 -1
  5. data/lib/nested_form/view_helper.rb +12 -4
  6. data/spec/dummy/app/assets/javascripts/jquery_nested_form.js +14 -6
  7. data/spec/dummy/app/assets/javascripts/prototype_nested_form.js +8 -2
  8. data/spec/dummy/app/assets/stylesheets/companies.css +4 -0
  9. data/spec/dummy/app/controllers/companies_controller.rb +5 -0
  10. data/spec/dummy/app/models/company.rb +6 -0
  11. data/spec/dummy/app/views/companies/new.html.erb +16 -0
  12. data/spec/dummy/config/routes.rb +1 -0
  13. data/spec/dummy/db/development.sqlite3 +0 -0
  14. data/spec/dummy/db/migrate/20130203095901_create_company.rb +14 -0
  15. data/spec/dummy/db/schema.rb +7 -2
  16. data/spec/dummy/db/test.sqlite3 +0 -0
  17. data/spec/dummy/log/development.log +18 -0
  18. data/spec/dummy/log/test.log +125 -327
  19. data/spec/dummy/tmp/cache/assets/C99/4D0/sprockets%2F5e30a6b911437f1428dc32c3ae182123 +0 -0
  20. data/spec/dummy/tmp/cache/assets/C99/7D0/sprockets%2F79513e6956e0ee8624976e041fd5636d +0 -0
  21. data/spec/dummy/tmp/cache/assets/CAA/C90/sprockets%2F1e6c8ee1258009385ccf5b84015424b3 +0 -0
  22. data/spec/dummy/tmp/cache/assets/CB2/CB0/sprockets%2F11cc8d161d71a716dd36f16849d90870 +0 -0
  23. data/spec/dummy/tmp/cache/assets/CB7/7F0/sprockets%2Fac97b043470f6fcc925c352f16956643 +0 -0
  24. data/spec/dummy/tmp/cache/assets/CDB/8A0/sprockets%2Faed2a2575c376263c26e93b56b57051d +0 -0
  25. data/spec/dummy/tmp/cache/assets/D1F/A10/sprockets%2F60317e62cb324bfd9987e8da9636fd06 +0 -0
  26. data/spec/dummy/tmp/cache/assets/D49/870/sprockets%2F90896142645585acc8baf56ad57e3afb +0 -0
  27. data/spec/dummy/tmp/cache/assets/D62/F00/sprockets%2F6ac03a007f26b1c18ed3d53498ad3eb8 +0 -0
  28. data/spec/dummy/tmp/cache/assets/D79/BC0/sprockets%2F85a1db977361cc5130fcefb4637ff67e +0 -0
  29. data/spec/dummy/tmp/cache/assets/D87/1F0/sprockets%2F61c9ceafb877fb740c67416ff6f782a9 +0 -0
  30. data/spec/dummy/tmp/cache/assets/DAD/4F0/sprockets%2F765acd1bf68dc90f7d3e61da78b1e659 +0 -0
  31. data/spec/dummy/tmp/cache/assets/E03/3F0/sprockets%2F82b37ae9eccec44c1ef44cfdd07d8534 +0 -0
  32. data/spec/dummy/tmp/cache/assets/E0A/CA0/sprockets%2F7fe72ac1c0db1a7e8e7f59cf25e8a39e +0 -0
  33. data/spec/dummy/tmp/cache/assets/E3A/A60/sprockets%2F7c72c96cfc66454caf5fc8ca0fedd4f3 +0 -0
  34. data/spec/dummy/tmp/cache/assets/E54/400/sprockets%2Fd0cbc16cc37efcf9dc41f242b5dbbf81 +0 -0
  35. data/spec/dummy/tmp/cache/assets/EB7/AB0/sprockets%2F801d29a5debdbfbfb4eef14d70d9bcdb +0 -0
  36. data/spec/dummy/tmp/cache/assets/F48/5E0/sprockets%2F26cd6ffcffbebbe2fd6cd1a8f0c2debc +0 -0
  37. data/spec/form_spec.rb +16 -0
  38. data/spec/nested_form/builder_spec.rb +12 -0
  39. data/spec/nested_form/view_helper_spec.rb +13 -2
  40. data/vendor/assets/javascripts/jquery_nested_form.js +14 -6
  41. data/vendor/assets/javascripts/prototype_nested_form.js +8 -2
  42. metadata +93 -70
@@ -47,4 +47,20 @@ describe 'NestedForm' do
47
47
  name = find('.fields .fields input[id$=name]')[:name]
48
48
  name.should match(/\Aproject\[tasks_attributes\]\[\d+\]\[milestones_attributes\]\[\d+\]\[name\]\z/)
49
49
  end
50
+
51
+ it 'generates correct name for the nested input (has_one => has_many)', :js => true do
52
+ visit '/companies/new?type=jquery'
53
+ click_link 'Add new task'
54
+ name = find('.fields .fields input[id$=name]')[:name]
55
+ name.should match(/\Acompany\[project_attributes\]\[tasks_attributes\]\[\d+\]\[name\]\z/)
56
+ end
57
+
58
+ it 'generates correct name for the nested input (has_one => has_many => has_many)', :js => true do
59
+ visit '/companies/new?type=jquery'
60
+ click_link 'Add new task'
61
+ click_link 'Add new milestone'
62
+ name = find('.fields .fields .fields input[id$=name]')[:name]
63
+ name.should match(/\Acompany\[project_attributes\]\[tasks_attributes\]\[\d+\]\[milestones_attributes\]\[\d+\]\[name\]\z/)
64
+ end
65
+
50
66
  end
@@ -138,6 +138,18 @@ require "spec_helper"
138
138
 
139
139
  output.should match(/div.+data-blueprint="Task"/)
140
140
  end
141
+
142
+ it "doesn't render wrapper with nested_wrapper option" do
143
+ task = project.tasks.build
144
+ fields = subject.fields_for(:tasks, :nested_wrapper => false) { 'Task' }
145
+
146
+ fields.should eq('Task')
147
+
148
+ subject.link_to_add 'Add', :tasks
149
+ output = template.send(:after_nested_form_callbacks)
150
+
151
+ output.should match(/div.+data-blueprint="Task"/)
152
+ end
141
153
  end
142
154
 
143
155
  context "with options" do
@@ -48,8 +48,19 @@ describe NestedForm::ViewHelper do
48
48
  it "should append content to end of nested form" do
49
49
  _view.after_nested_form(:tasks) { _view.concat("123") }
50
50
  _view.after_nested_form(:milestones) { _view.concat("456") }
51
- _view.nested_form_for(Project.new) {}
52
- _view.output_buffer.should include("123456")
51
+ result = _view.nested_form_for(Project.new) {}
52
+ result.should include("123456")
53
+ end
54
+
55
+ if Rails.version >= "3.1.0"
56
+ it "should set multipart when there's a file field" do
57
+ _view.nested_form_for(Project.new) do |f|
58
+ f.fields_for(:tasks) do |t|
59
+ t.file_field :file
60
+ end
61
+ f.link_to_add "Add", :tasks
62
+ end.should include(" enctype=\"multipart/form-data\" ")
63
+ end
53
64
  end
54
65
  end
55
66
 
@@ -1,4 +1,4 @@
1
- jQuery(function($) {
1
+ (function($) {
2
2
  window.NestedFormEvents = function() {
3
3
  this.addFields = $.proxy(this.addFields, this);
4
4
  this.removeFields = $.proxy(this.removeFields, this);
@@ -21,7 +21,7 @@ jQuery(function($) {
21
21
  // or for an edit form:
22
22
  // project[tasks_attributes][0][assignments_attributes][1]
23
23
  if (context) {
24
- var parentNames = context.match(/[a-z_]+_attributes/g) || [];
24
+ var parentNames = context.match(/[a-z_]+_attributes(?=\]\[(new_)?\d+\])/g) || [];
25
25
  var parentIds = context.match(/[0-9]+/g) || [];
26
26
 
27
27
  for(var i = 0; i < parentNames.length; i++) {
@@ -39,8 +39,8 @@ jQuery(function($) {
39
39
 
40
40
  // Make a unique ID for the new child
41
41
  var regexp = new RegExp('new_' + assoc, 'g');
42
- var new_id = new Date().getTime();
43
- content = content.replace(regexp, new_id);
42
+ var new_id = this.newId();
43
+ content = $.trim(content.replace(regexp, new_id));
44
44
 
45
45
  var field = this.insertFields(content, assoc, link);
46
46
  // bubble up event upto document (through form)
@@ -49,8 +49,16 @@ jQuery(function($) {
49
49
  .trigger({ type: 'nested:fieldAdded:' + assoc, field: field });
50
50
  return false;
51
51
  },
52
+ newId: function() {
53
+ return new Date().getTime();
54
+ },
52
55
  insertFields: function(content, assoc, link) {
53
- return $(content).insertBefore(link);
56
+ var target = $(link).data('target');
57
+ if (target) {
58
+ return $(content).appendTo($(target));
59
+ } else {
60
+ return $(content).insertBefore(link);
61
+ }
54
62
  },
55
63
  removeFields: function(e) {
56
64
  var $link = $(e.currentTarget),
@@ -73,7 +81,7 @@ jQuery(function($) {
73
81
  $(document)
74
82
  .delegate('form a.add_nested_fields', 'click', nestedFormEvents.addFields)
75
83
  .delegate('form a.remove_nested_fields', 'click', nestedFormEvents.removeFields);
76
- });
84
+ })(jQuery);
77
85
 
78
86
  // http://plugins.jquery.com/project/closestChild
79
87
  /*
@@ -2,6 +2,7 @@ document.observe('click', function(e, el) {
2
2
  if (el = e.findElement('form a.add_nested_fields')) {
3
3
  // Setup
4
4
  var assoc = el.readAttribute('data-association'); // Name of child
5
+ var target = el.readAttribute('data-target');
5
6
  var blueprint = $(el.readAttribute('data-blueprint-id'));
6
7
  var content = blueprint.readAttribute('data-blueprint'); // Fields template
7
8
 
@@ -14,7 +15,7 @@ document.observe('click', function(e, el) {
14
15
  // or for an edit form:
15
16
  // project[tasks_attributes][0][assignments_attributes][1]
16
17
  if(context) {
17
- var parent_names = context.match(/[a-z_]+_attributes/g) || [];
18
+ var parent_names = context.match(/[a-z_]+_attributes(?=\]\[(new_)?\d+\])/g) || [];
18
19
  var parent_ids = context.match(/[0-9]+/g) || [];
19
20
 
20
21
  for(i = 0; i < parent_names.length; i++) {
@@ -35,7 +36,12 @@ document.observe('click', function(e, el) {
35
36
  var new_id = new Date().getTime();
36
37
  content = content.replace(regexp, new_id);
37
38
 
38
- var field = el.insert({ before: content });
39
+ var field;
40
+ if (target) {
41
+ field = $$(target)[0].insert(content);
42
+ } else {
43
+ field = el.insert({ before: content });
44
+ }
39
45
  field.fire('nested:fieldAdded', {field: field});
40
46
  field.fire('nested:fieldAdded:' + assoc, {field: field});
41
47
  return false;
metadata CHANGED
@@ -2,7 +2,7 @@
2
2
  name: nested_form
3
3
  version: !ruby/object:Gem::Version
4
4
  prerelease:
5
- version: 0.3.1
5
+ version: 0.3.2
6
6
  platform: ruby
7
7
  authors:
8
8
  - Ryan Bates
@@ -10,10 +10,9 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2012-11-05 00:00:00.000000000 Z
13
+ date: 2013-04-05 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
- prerelease: false
17
16
  type: :development
18
17
  requirement: !ruby/object:Gem::Requirement
19
18
  none: false
@@ -21,6 +20,7 @@ dependencies:
21
20
  - - ! '>='
22
21
  - !ruby/object:Gem::Version
23
22
  version: '0'
23
+ prerelease: false
24
24
  version_requirements: !ruby/object:Gem::Requirement
25
25
  none: false
26
26
  requirements:
@@ -29,7 +29,6 @@ dependencies:
29
29
  version: '0'
30
30
  name: rake
31
31
  - !ruby/object:Gem::Dependency
32
- prerelease: false
33
32
  type: :development
34
33
  requirement: !ruby/object:Gem::Requirement
35
34
  none: false
@@ -37,6 +36,7 @@ dependencies:
37
36
  - - ! '>='
38
37
  - !ruby/object:Gem::Version
39
38
  version: '0'
39
+ prerelease: false
40
40
  version_requirements: !ruby/object:Gem::Requirement
41
41
  none: false
42
42
  requirements:
@@ -45,7 +45,6 @@ dependencies:
45
45
  version: '0'
46
46
  name: bundler
47
47
  - !ruby/object:Gem::Dependency
48
- prerelease: false
49
48
  type: :development
50
49
  requirement: !ruby/object:Gem::Requirement
51
50
  none: false
@@ -53,6 +52,7 @@ dependencies:
53
52
  - - ~>
54
53
  - !ruby/object:Gem::Version
55
54
  version: '2.6'
55
+ prerelease: false
56
56
  version_requirements: !ruby/object:Gem::Requirement
57
57
  none: false
58
58
  requirements:
@@ -61,7 +61,6 @@ dependencies:
61
61
  version: '2.6'
62
62
  name: rspec-rails
63
63
  - !ruby/object:Gem::Dependency
64
- prerelease: false
65
64
  type: :development
66
65
  requirement: !ruby/object:Gem::Requirement
67
66
  none: false
@@ -69,6 +68,7 @@ dependencies:
69
68
  - - ! '>='
70
69
  - !ruby/object:Gem::Version
71
70
  version: '0'
71
+ prerelease: false
72
72
  version_requirements: !ruby/object:Gem::Requirement
73
73
  none: false
74
74
  requirements:
@@ -76,6 +76,22 @@ dependencies:
76
76
  - !ruby/object:Gem::Version
77
77
  version: '0'
78
78
  name: mocha
79
+ - !ruby/object:Gem::Dependency
80
+ type: :development
81
+ requirement: !ruby/object:Gem::Requirement
82
+ none: false
83
+ requirements:
84
+ - - ~>
85
+ - !ruby/object:Gem::Version
86
+ version: '1.1'
87
+ prerelease: false
88
+ version_requirements: !ruby/object:Gem::Requirement
89
+ none: false
90
+ requirements:
91
+ - - ~>
92
+ - !ruby/object:Gem::Version
93
+ version: '1.1'
94
+ name: capybara
79
95
  description: Gem to conveniently handle multiple models in a single form with Rails
80
96
  3 and jQuery or Prototype.
81
97
  email: ryan@railscasts.com
@@ -83,93 +99,100 @@ executables: []
83
99
  extensions: []
84
100
  extra_rdoc_files: []
85
101
  files:
86
- - lib/generators/nested_form/install_generator.rb
102
+ - lib/nested_form.rb
103
+ - lib/nested_form/view_helper.rb
87
104
  - lib/nested_form/builder_mixin.rb
88
105
  - lib/nested_form/builders.rb
89
106
  - lib/nested_form/engine.rb
90
- - lib/nested_form/view_helper.rb
91
- - lib/nested_form.rb
92
- - spec/dummy/app/assets/javascripts/application.js
93
- - spec/dummy/app/assets/javascripts/jquery.js
107
+ - lib/generators/nested_form/install_generator.rb
108
+ - spec/form_spec.rb
109
+ - spec/events_spec.rb
110
+ - spec/dummy/config.ru
111
+ - spec/dummy/script/rails
112
+ - spec/dummy/test/functional/projects_controller_test.rb
113
+ - spec/dummy/test/unit/helpers/projects_helper_test.rb
114
+ - spec/dummy/public/404.html
115
+ - spec/dummy/public/500.html
116
+ - spec/dummy/public/favicon.ico
117
+ - spec/dummy/public/422.html
118
+ - spec/dummy/app/helpers/application_helper.rb
119
+ - spec/dummy/app/helpers/projects_helper.rb
120
+ - spec/dummy/app/models/project.rb
121
+ - spec/dummy/app/models/company.rb
122
+ - spec/dummy/app/models/project_task.rb
123
+ - spec/dummy/app/models/task.rb
124
+ - spec/dummy/app/models/milestone.rb
125
+ - spec/dummy/app/assets/javascripts/prototype.js
126
+ - spec/dummy/app/assets/javascripts/projects.js
127
+ - spec/dummy/app/assets/javascripts/prototype_nested_form.js
94
128
  - spec/dummy/app/assets/javascripts/jquery_events_test.js
95
129
  - spec/dummy/app/assets/javascripts/jquery_nested_form.js
96
- - spec/dummy/app/assets/javascripts/projects.js
97
- - spec/dummy/app/assets/javascripts/prototype.js
130
+ - spec/dummy/app/assets/javascripts/application.js
98
131
  - spec/dummy/app/assets/javascripts/prototype_events_test.js
99
- - spec/dummy/app/assets/javascripts/prototype_nested_form.js
132
+ - spec/dummy/app/assets/javascripts/jquery.js
100
133
  - spec/dummy/app/assets/stylesheets/application.css
101
134
  - spec/dummy/app/assets/stylesheets/projects.css
135
+ - spec/dummy/app/assets/stylesheets/companies.css
136
+ - spec/dummy/app/views/projects/without_intermediate_inputs.html.erb
137
+ - spec/dummy/app/views/projects/new.html.erb
138
+ - spec/dummy/app/views/layouts/application.html.erb
139
+ - spec/dummy/app/views/companies/new.html.erb
140
+ - spec/dummy/app/controllers/companies_controller.rb
102
141
  - spec/dummy/app/controllers/application_controller.rb
103
142
  - spec/dummy/app/controllers/projects_controller.rb
104
- - spec/dummy/app/helpers/application_helper.rb
105
- - spec/dummy/app/helpers/projects_helper.rb
106
- - spec/dummy/app/models/milestone.rb
107
- - spec/dummy/app/models/project.rb
108
- - spec/dummy/app/models/project_task.rb
109
- - spec/dummy/app/models/task.rb
110
- - spec/dummy/app/views/layouts/application.html.erb
111
- - spec/dummy/app/views/projects/new.html.erb
112
- - spec/dummy/app/views/projects/without_intermediate_inputs.html.erb
113
- - spec/dummy/config/application.rb
114
- - spec/dummy/config/boot.rb
115
- - spec/dummy/config/database.yml
116
- - spec/dummy/config/environment.rb
117
- - spec/dummy/config/environments/development.rb
118
- - spec/dummy/config/environments/production.rb
119
- - spec/dummy/config/environments/test.rb
120
- - spec/dummy/config/initializers/backtrace_silencers.rb
121
- - spec/dummy/config/initializers/inflections.rb
122
- - spec/dummy/config/initializers/mime_types.rb
123
- - spec/dummy/config/initializers/secret_token.rb
124
- - spec/dummy/config/initializers/session_store.rb
125
- - spec/dummy/config/initializers/wrap_parameters.rb
126
- - spec/dummy/config/locales/en.yml
127
- - spec/dummy/config/routes.rb
128
- - spec/dummy/config.ru
129
- - spec/dummy/db/migrate/20110710143903_initial_tables.rb
130
- - spec/dummy/db/migrate/20120819164528_add_association_with_class_name.rb
131
- - spec/dummy/db/schema.rb
132
- - spec/dummy/db/test.sqlite3
133
143
  - spec/dummy/log/test.log
134
- - spec/dummy/public/404.html
135
- - spec/dummy/public/422.html
136
- - spec/dummy/public/500.html
137
- - spec/dummy/public/favicon.ico
138
- - spec/dummy/Rakefile
139
- - spec/dummy/script/rails
140
- - spec/dummy/test/functional/projects_controller_test.rb
141
- - spec/dummy/test/unit/helpers/projects_helper_test.rb
142
- - spec/dummy/tmp/cache/assets/C99/4D0/sprockets%2F5e30a6b911437f1428dc32c3ae182123
143
- - spec/dummy/tmp/cache/assets/C99/7D0/sprockets%2F79513e6956e0ee8624976e041fd5636d
144
- - spec/dummy/tmp/cache/assets/CAA/C90/sprockets%2F1e6c8ee1258009385ccf5b84015424b3
145
- - spec/dummy/tmp/cache/assets/CB2/CB0/sprockets%2F11cc8d161d71a716dd36f16849d90870
144
+ - spec/dummy/log/development.log
145
+ - spec/dummy/tmp/cache/assets/F48/5E0/sprockets%2F26cd6ffcffbebbe2fd6cd1a8f0c2debc
146
+ - spec/dummy/tmp/cache/assets/D87/1F0/sprockets%2F61c9ceafb877fb740c67416ff6f782a9
146
147
  - spec/dummy/tmp/cache/assets/CB7/7F0/sprockets%2Fac97b043470f6fcc925c352f16956643
147
- - spec/dummy/tmp/cache/assets/CDB/8A0/sprockets%2Faed2a2575c376263c26e93b56b57051d
148
- - spec/dummy/tmp/cache/assets/D1F/A10/sprockets%2F60317e62cb324bfd9987e8da9636fd06
149
148
  - spec/dummy/tmp/cache/assets/D49/870/sprockets%2F90896142645585acc8baf56ad57e3afb
150
- - spec/dummy/tmp/cache/assets/D62/F00/sprockets%2F6ac03a007f26b1c18ed3d53498ad3eb8
151
- - spec/dummy/tmp/cache/assets/D79/BC0/sprockets%2F85a1db977361cc5130fcefb4637ff67e
152
- - spec/dummy/tmp/cache/assets/D87/1F0/sprockets%2F61c9ceafb877fb740c67416ff6f782a9
149
+ - spec/dummy/tmp/cache/assets/E54/400/sprockets%2Fd0cbc16cc37efcf9dc41f242b5dbbf81
153
150
  - spec/dummy/tmp/cache/assets/DAD/4F0/sprockets%2F765acd1bf68dc90f7d3e61da78b1e659
151
+ - spec/dummy/tmp/cache/assets/E3A/A60/sprockets%2F7c72c96cfc66454caf5fc8ca0fedd4f3
152
+ - spec/dummy/tmp/cache/assets/CB2/CB0/sprockets%2F11cc8d161d71a716dd36f16849d90870
153
+ - spec/dummy/tmp/cache/assets/D62/F00/sprockets%2F6ac03a007f26b1c18ed3d53498ad3eb8
154
154
  - spec/dummy/tmp/cache/assets/E03/3F0/sprockets%2F82b37ae9eccec44c1ef44cfdd07d8534
155
+ - spec/dummy/tmp/cache/assets/CDB/8A0/sprockets%2Faed2a2575c376263c26e93b56b57051d
156
+ - spec/dummy/tmp/cache/assets/D1F/A10/sprockets%2F60317e62cb324bfd9987e8da9636fd06
155
157
  - spec/dummy/tmp/cache/assets/E0A/CA0/sprockets%2F7fe72ac1c0db1a7e8e7f59cf25e8a39e
156
- - spec/dummy/tmp/cache/assets/E3A/A60/sprockets%2F7c72c96cfc66454caf5fc8ca0fedd4f3
157
- - spec/dummy/tmp/cache/assets/E54/400/sprockets%2Fd0cbc16cc37efcf9dc41f242b5dbbf81
158
158
  - spec/dummy/tmp/cache/assets/EB7/AB0/sprockets%2F801d29a5debdbfbfb4eef14d70d9bcdb
159
- - spec/dummy/tmp/cache/assets/F48/5E0/sprockets%2F26cd6ffcffbebbe2fd6cd1a8f0c2debc
160
- - spec/events_spec.rb
161
- - spec/form_spec.rb
162
- - spec/nested_form/builder_spec.rb
163
- - spec/nested_form/view_helper_spec.rb
159
+ - spec/dummy/tmp/cache/assets/D79/BC0/sprockets%2F85a1db977361cc5130fcefb4637ff67e
160
+ - spec/dummy/tmp/cache/assets/C99/4D0/sprockets%2F5e30a6b911437f1428dc32c3ae182123
161
+ - spec/dummy/tmp/cache/assets/C99/7D0/sprockets%2F79513e6956e0ee8624976e041fd5636d
162
+ - spec/dummy/tmp/cache/assets/CAA/C90/sprockets%2F1e6c8ee1258009385ccf5b84015424b3
163
+ - spec/dummy/Rakefile
164
+ - spec/dummy/db/development.sqlite3
165
+ - spec/dummy/db/schema.rb
166
+ - spec/dummy/db/migrate/20120819164528_add_association_with_class_name.rb
167
+ - spec/dummy/db/migrate/20110710143903_initial_tables.rb
168
+ - spec/dummy/db/migrate/20130203095901_create_company.rb
169
+ - spec/dummy/db/test.sqlite3
170
+ - spec/dummy/config/database.yml
171
+ - spec/dummy/config/routes.rb
172
+ - spec/dummy/config/environments/test.rb
173
+ - spec/dummy/config/environments/development.rb
174
+ - spec/dummy/config/environments/production.rb
175
+ - spec/dummy/config/locales/en.yml
176
+ - spec/dummy/config/boot.rb
177
+ - spec/dummy/config/application.rb
178
+ - spec/dummy/config/environment.rb
179
+ - spec/dummy/config/initializers/session_store.rb
180
+ - spec/dummy/config/initializers/secret_token.rb
181
+ - spec/dummy/config/initializers/mime_types.rb
182
+ - spec/dummy/config/initializers/inflections.rb
183
+ - spec/dummy/config/initializers/backtrace_silencers.rb
184
+ - spec/dummy/config/initializers/wrap_parameters.rb
164
185
  - spec/spec_helper.rb
165
- - vendor/assets/javascripts/jquery_nested_form.js
186
+ - spec/nested_form/view_helper_spec.rb
187
+ - spec/nested_form/builder_spec.rb
166
188
  - vendor/assets/javascripts/prototype_nested_form.js
189
+ - vendor/assets/javascripts/jquery_nested_form.js
167
190
  - CHANGELOG.rdoc
191
+ - LICENSE
192
+ - README.md
168
193
  - CONTRIBUTING.md
169
194
  - Gemfile
170
- - LICENSE
171
195
  - Rakefile
172
- - README.md
173
196
  homepage: http://github.com/ryanb/nested_form
174
197
  licenses: []
175
198
  post_install_message: