view_mapper 0.3.3 → 0.3.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (81) hide show
  1. data/README.rdoc +3 -1
  2. data/VERSION +1 -1
  3. data/lib/view_mapper.rb +1 -0
  4. data/lib/view_mapper/belongs_to_parent_models.rb +12 -26
  5. data/lib/view_mapper/has_many_child_models.rb +9 -9
  6. data/lib/view_mapper/model_info.rb +56 -18
  7. data/lib/view_mapper/views/belongs_to/belongs_to_view.rb +14 -0
  8. data/lib/view_mapper/views/belongs_to_auto_complete/belongs_to_auto_complete_view.rb +9 -2
  9. data/lib/view_mapper/views/has_many/templates/helper.rb +1 -1
  10. data/lib/view_mapper/views/has_many/templates/view_child_form.html.erb +1 -1
  11. data/lib/view_mapper/views/has_many/templates/view_form.html.erb +1 -1
  12. data/lib/view_mapper/views/has_many_existing/has_many_existing_view.rb +126 -0
  13. data/lib/view_mapper/views/has_many_existing/templates/model.rb +21 -0
  14. data/lib/view_mapper/views/has_many_existing/templates/view_child_form.html.erb +16 -0
  15. data/lib/view_mapper/views/has_many_existing/templates/view_form.html.erb +20 -0
  16. data/lib/view_mapper/views/has_many_existing/templates/view_show.html.erb +26 -0
  17. data/test/generators/scaffold_for_view/scaffold_for_view_generator_test.rb +15 -15
  18. data/test/generators/view_for/view_for_generator_test.rb +18 -18
  19. data/test/model_info_test.rb +91 -20
  20. data/test/test_helper.rb +75 -105
  21. data/test/views/auto_complete/auto_complete_test.rb +104 -102
  22. data/test/views/auto_complete/expected_templates/edit.html.erb +6 -6
  23. data/test/views/auto_complete/expected_templates/expected_routes.rb +1 -1
  24. data/test/views/auto_complete/expected_templates/index.html.erb +10 -10
  25. data/test/views/auto_complete/expected_templates/new.html.erb +5 -5
  26. data/test/views/auto_complete/expected_templates/show.html.erb +6 -6
  27. data/test/views/auto_complete/expected_templates/{testies.html.erb → test_models.html.erb} +1 -1
  28. data/test/views/auto_complete/expected_templates/test_models_controller.rb +89 -0
  29. data/test/views/belongs_to/belongs_to_test.rb +238 -202
  30. data/test/views/belongs_to/expected_templates/_form.html.erb +4 -4
  31. data/test/views/belongs_to/expected_templates/child_model.rb +10 -0
  32. data/test/views/belongs_to/expected_templates/create_child_models.rb +18 -0
  33. data/test/views/belongs_to/expected_templates/edit.html.erb +4 -4
  34. data/test/views/belongs_to/expected_templates/index.html.erb +11 -11
  35. data/test/views/belongs_to/expected_templates/new.html.erb +3 -3
  36. data/test/views/belongs_to/expected_templates/show.html.erb +7 -7
  37. data/test/views/belongs_to_auto_complete/belongs_to_auto_complete_test.rb +440 -406
  38. data/test/views/belongs_to_auto_complete/expected_templates/_form.html.erb +4 -4
  39. data/test/views/belongs_to_auto_complete/expected_templates/child_model.rb +16 -0
  40. data/test/views/belongs_to_auto_complete/expected_templates/{some_other_models.html.erb → child_models.html.erb} +1 -1
  41. data/test/views/belongs_to_auto_complete/expected_templates/child_models_controller.rb +89 -0
  42. data/test/views/belongs_to_auto_complete/expected_templates/create_child_models.rb +18 -0
  43. data/test/views/belongs_to_auto_complete/expected_templates/edit.html.erb +4 -4
  44. data/test/views/belongs_to_auto_complete/expected_templates/expected_routes.rb +2 -2
  45. data/test/views/belongs_to_auto_complete/expected_templates/index.html.erb +11 -11
  46. data/test/views/belongs_to_auto_complete/expected_templates/new.html.erb +3 -3
  47. data/test/views/belongs_to_auto_complete/expected_templates/show.html.erb +7 -7
  48. data/test/views/has_many/expected_templates/_form.html.erb +8 -8
  49. data/test/views/has_many/expected_templates/{_person.html.erb → _second_child_model.html.erb} +5 -5
  50. data/test/views/has_many/expected_templates/create_parent_models.rb +16 -0
  51. data/test/views/has_many/expected_templates/edit.html.erb +4 -4
  52. data/test/views/has_many/expected_templates/index.html.erb +7 -7
  53. data/test/views/has_many/expected_templates/new.html.erb +3 -3
  54. data/test/views/has_many/expected_templates/{parent.rb → parent_model.rb} +5 -5
  55. data/test/views/has_many/expected_templates/show.html.erb +15 -15
  56. data/test/views/has_many/has_many_view_test.rb +334 -292
  57. data/test/views/has_many_existing/expected_templates/_assignment.html.erb +14 -0
  58. data/test/views/has_many_existing/expected_templates/_form.html.erb +16 -0
  59. data/test/views/{has_many/expected_templates/create_parents.rb → has_many_existing/expected_templates/create_programmers.rb} +3 -3
  60. data/test/views/has_many_existing/expected_templates/edit.html.erb +11 -0
  61. data/test/views/has_many_existing/expected_templates/index.html.erb +20 -0
  62. data/test/views/has_many_existing/expected_templates/new.html.erb +10 -0
  63. data/test/views/has_many_existing/expected_templates/programmer.rb +10 -0
  64. data/test/views/has_many_existing/expected_templates/show.html.erb +20 -0
  65. data/test/views/has_many_existing/has_many_existing_test.rb +495 -0
  66. data/test/views/paperclip/expected_templates/{create_testies.rb → create_test_models.rb} +3 -3
  67. data/test/views/paperclip/expected_templates/edit.html.erb +4 -4
  68. data/test/views/paperclip/expected_templates/index.html.erb +10 -10
  69. data/test/views/paperclip/expected_templates/new.html.erb +3 -3
  70. data/test/views/paperclip/expected_templates/show.html.erb +8 -8
  71. data/test/views/paperclip/expected_templates/{testy.rb → test_model.rb} +1 -1
  72. data/test/views/paperclip/paperclip_view_test.rb +254 -226
  73. data/view_mapper.gemspec +43 -27
  74. metadata +64 -37
  75. data/test/views/auto_complete/expected_templates/actual_index +0 -26
  76. data/test/views/auto_complete/expected_templates/testies_controller.rb +0 -89
  77. data/test/views/belongs_to/expected_templates/create_some_other_models.rb +0 -18
  78. data/test/views/belongs_to/expected_templates/some_other_model.rb +0 -10
  79. data/test/views/belongs_to_auto_complete/expected_templates/create_some_other_models.rb +0 -18
  80. data/test/views/belongs_to_auto_complete/expected_templates/some_other_model.rb +0 -16
  81. data/test/views/belongs_to_auto_complete/expected_templates/some_other_models_controller.rb +0 -89
@@ -12,141 +12,143 @@ class AutoCompleteViewTest < Test::Unit::TestCase
12
12
  attr_reader :file_name
13
13
  attr_reader :controller_singular_name
14
14
 
15
- context "A view_for generator instantiated for a test model" do
15
+ context "A rails app that has the auto_complete plugin installed" do
16
16
  setup do
17
- setup_test_model
17
+ ActionController::Base.send(:include, MockAutoComplete)
18
18
  end
19
19
 
20
- should "detect all of the text fields when no auto_complete field is specified" do
21
- gen = new_generator_for_test_model('view_for', ['--view', 'auto_complete'])
22
- assert_contains gen.auto_complete_attributes, 'first_name'
23
- assert_contains gen.auto_complete_attributes, 'last_name'
24
- assert_contains gen.auto_complete_attributes, 'address'
25
- assert_does_not_contain gen.auto_complete_attributes, 'some_flag'
26
- end
27
- end
20
+ context "A view_for generator instantiated for a test model" do
21
+ setup do
22
+ ClassFactory :test_model
23
+ end
28
24
 
29
- context "A scaffold_for_view generator instantiated for a test model" do
30
- setup do
31
- setup_test_model
25
+ should "detect all of the text fields when no auto_complete field is specified" do
26
+ gen = new_generator_for_test_model('view_for', ['--view', 'auto_complete'])
27
+ assert_contains gen.auto_complete_attributes, 'first_name'
28
+ assert_contains gen.auto_complete_attributes, 'last_name'
29
+ assert_contains gen.auto_complete_attributes, 'address'
30
+ assert_does_not_contain gen.auto_complete_attributes, 'some_flag'
31
+ end
32
32
  end
33
33
 
34
- should "return an error message without an auto_complete param" do
35
- Rails::Generator::Base.logger.expects('error').with('No auto_complete attribute specified.')
36
- new_generator_for_test_model('scaffold_for_view', ['--view', 'auto_complete'])
34
+ context "A scaffold_for_view generator instantiated for a test model" do
35
+
36
+ should "return an error message without an auto_complete param" do
37
+ Rails::Generator::Base.logger.expects('error').with('No auto_complete attribute specified.')
38
+ new_generator_for_test_model('scaffold_for_view', ['--view', 'auto_complete'])
39
+ end
37
40
  end
38
- end
39
41
 
40
- generators = %w{ view_for scaffold_for_view }
41
- generators.each do |gen|
42
+ generators = %w{ view_for scaffold_for_view }
43
+ generators.each do |gen|
42
44
 
43
- context "A #{gen} generator instantiated for a test model" do
44
- setup do
45
- setup_test_model
46
- end
45
+ context "A #{gen} generator instantiated for a test model" do
46
+ setup do
47
+ ClassFactory :test_model
48
+ end
47
49
 
48
- should "return an error message with a bad auto_complete param" do
49
- Rails::Generator::Base.logger.expects('error').with('Field \'blah\' does not exist.')
50
- new_generator_for_test_model(gen, ['--view', 'auto_complete:blah'])
51
- end
50
+ should "return an error message with a bad auto_complete param" do
51
+ Rails::Generator::Base.logger.expects('error').with('Field \'blah\' does not exist.')
52
+ new_generator_for_test_model(gen, ['--view', 'auto_complete:blah'])
53
+ end
52
54
 
53
- should "return an error message when the auto_complete param matches a field that is not a text field" do
54
- Rails::Generator::Base.logger.expects('error').with('Field \'some_flag\' is not a text field.')
55
- new_generator_for_test_model(gen, ['--view', 'auto_complete:some_flag'])
55
+ should "return an error message when the auto_complete param matches a field that is not a text field" do
56
+ Rails::Generator::Base.logger.expects('error').with('Field \'some_flag\' is not a text field.')
57
+ new_generator_for_test_model(gen, ['--view', 'auto_complete:some_flag'])
58
+ end
56
59
  end
57
- end
58
60
 
59
- context "A #{gen} generator instantiated for a test model with auto_complete on the first and last name fields" do
60
- setup do
61
- setup_test_model
62
- @gen = new_generator_for_test_model(gen, ['--view', 'auto_complete:first_name,last_name'])
63
- end
61
+ context "A #{gen} generator instantiated for a test model with auto_complete on the first and last name fields" do
62
+ setup do
63
+ ClassFactory :test_model
64
+ @gen = new_generator_for_test_model(gen, ['--view', 'auto_complete:first_name,last_name'])
65
+ end
64
66
 
65
- should "return the proper source root" do
66
- assert_equal File.expand_path(File.dirname(__FILE__) + '/../../..//lib/view_mapper/views/auto_complete/templates'), ViewMapper::AutoCompleteView.source_root
67
- end
67
+ should "return the proper source root" do
68
+ assert_equal File.expand_path(File.dirname(__FILE__) + '/../../..//lib/view_mapper/views/auto_complete/templates'), ViewMapper::AutoCompleteView.source_root
69
+ end
68
70
 
69
- view_for_templates = %w{ new edit index show }
70
- view_for_templates.each do | template |
71
- should "render the #{template} template as expected" do
72
- @attributes = @gen.attributes
73
- @singular_name = @gen.singular_name
74
- @plural_name = @gen.plural_name
71
+ view_for_templates = %w{ new edit index show }
72
+ view_for_templates.each do | template |
73
+ should "render the #{template} template as expected" do
74
+ @attributes = @gen.attributes
75
+ @singular_name = @gen.singular_name
76
+ @plural_name = @gen.plural_name
77
+ @auto_complete_attributes = @gen.auto_complete_attributes
78
+ template_file = File.open(@gen.source_path("view_#{template}.html.erb"))
79
+ result = ERB.new(template_file.read, nil, '-').result(binding)
80
+ expected_file = File.open(File.join(File.dirname(__FILE__), "expected_templates/#{template}.html.erb"), 'rb')
81
+ assert_equal expected_file.read, result
82
+ end
83
+ end
84
+
85
+ should "render the layout template as expected" do
86
+ @controller_class_name = @gen.controller_class_name
87
+ template_file = File.open(@gen.source_path("layout.html.erb"))
88
+ result = ERB.new(template_file.read, nil, '-').result(binding)
89
+ expected_file = File.open(File.join(File.dirname(__FILE__), "expected_templates/test_models.html.erb"))
90
+ assert_equal expected_file.read, result
91
+ end
92
+
93
+ should "render the controller template as expected" do
94
+ @controller_class_name = @gen.controller_class_name
95
+ @table_name = @gen.table_name
96
+ @class_name = @gen.class_name
97
+ @file_name = @gen.file_name
98
+ @controller_singular_name = @gen.controller_singular_name
75
99
  @auto_complete_attributes = @gen.auto_complete_attributes
76
- template_file = File.open(@gen.source_path("view_#{template}.html.erb"))
100
+ template_file = File.open(@gen.source_path("controller.rb"))
77
101
  result = ERB.new(template_file.read, nil, '-').result(binding)
78
- expected_file = File.open(File.join(File.dirname(__FILE__), "expected_templates/#{template}.html.erb"), 'rb')
102
+ expected_file = File.open(File.join(File.dirname(__FILE__), "expected_templates/test_models_controller.rb"))
79
103
  assert_equal expected_file.read, result
80
104
  end
81
105
  end
82
106
 
83
- should "render the layout template as expected" do
84
- @controller_class_name = @gen.controller_class_name
85
- template_file = File.open(@gen.source_path("layout.html.erb"))
86
- result = ERB.new(template_file.read, nil, '-').result(binding)
87
- expected_file = File.open(File.join(File.dirname(__FILE__), "expected_templates/testies.html.erb"))
88
- assert_equal expected_file.read, result
89
- end
107
+ context "A Rails generator script" do
108
+ setup do
109
+ ClassFactory :test_model
110
+ @generator_script = Rails::Generator::Scripts::Generate.new
111
+ end
90
112
 
91
- should "render the controller template as expected" do
92
- @controller_class_name = @gen.controller_class_name
93
- @table_name = @gen.table_name
94
- @class_name = @gen.class_name
95
- @file_name = @gen.file_name
96
- @controller_singular_name = @gen.controller_singular_name
97
- @auto_complete_attributes = @gen.auto_complete_attributes
98
- template_file = File.open(@gen.source_path("controller.rb"))
99
- result = ERB.new(template_file.read, nil, '-').result(binding)
100
- expected_file = File.open(File.join(File.dirname(__FILE__), "expected_templates/testies_controller.rb"))
101
- assert_equal expected_file.read, result
113
+ should "add the proper auto_complete route to routes.rb when run on the #{gen} generator with a valid auto_complete field" do
114
+ Rails::Generator::Commands::Create.any_instance.stubs(:directory)
115
+ Rails::Generator::Commands::Create.any_instance.stubs(:template)
116
+ Rails::Generator::Commands::Create.any_instance.stubs(:route_resources)
117
+ Rails::Generator::Commands::Create.any_instance.stubs(:file)
118
+ Rails::Generator::Commands::Create.any_instance.stubs(:dependency)
119
+ Rails::Generator::Base.logger.stubs(:route)
120
+
121
+ expected_path = File.dirname(__FILE__) + '/expected_templates'
122
+ standard_routes_file = expected_path + '/standard_routes.rb'
123
+ expected_routes_file = expected_path + '/expected_routes.rb'
124
+ test_routes_file = expected_path + '/routes.rb'
125
+ ViewForGenerator.any_instance.stubs(:destination_path).returns test_routes_file
126
+ ScaffoldForViewGenerator.any_instance.stubs(:destination_path).returns test_routes_file
127
+ FileUtils.copy(standard_routes_file, test_routes_file)
128
+ Rails::Generator::Commands::Create.any_instance.stubs(:route_file).returns(test_routes_file)
129
+ @generator_script.run(generator_script_cmd_line(gen, ['--view', 'auto_complete:address']))
130
+ assert_equal File.open(expected_routes_file).read, File.open(test_routes_file).read
131
+ File.delete(test_routes_file)
132
+ end
102
133
  end
103
134
  end
104
135
 
105
136
  context "A Rails generator script" do
106
137
  setup do
107
- setup_test_model
108
138
  @generator_script = Rails::Generator::Scripts::Generate.new
109
139
  end
110
140
 
111
- should "add the proper auto_complete route to routes.rb when run on the #{gen} generator with a valid auto_complete field" do
112
- Rails::Generator::Commands::Create.any_instance.stubs(:directory)
113
- Rails::Generator::Commands::Create.any_instance.stubs(:template)
114
- Rails::Generator::Commands::Create.any_instance.stubs(:route_resources)
115
- Rails::Generator::Commands::Create.any_instance.stubs(:file)
116
- Rails::Generator::Commands::Create.any_instance.stubs(:dependency)
141
+ should "not perform any actions when run on the scaffold_for_view generator with no auto_complete field" do
142
+ Rails::Generator::Commands::Create.any_instance.expects(:directory).never
143
+ Rails::Generator::Commands::Create.any_instance.expects(:template).never
144
+ Rails::Generator::Commands::Create.any_instance.expects(:route_resources).never
145
+ Rails::Generator::Commands::Create.any_instance.expects(:file).never
146
+ Rails::Generator::Commands::Create.any_instance.expects(:route).never
147
+ Rails::Generator::Base.logger.stubs(:error)
117
148
  Rails::Generator::Base.logger.stubs(:route)
118
-
119
- expected_path = File.dirname(__FILE__) + '/expected_templates'
120
- standard_routes_file = expected_path + '/standard_routes.rb'
121
- expected_routes_file = expected_path + '/expected_routes.rb'
122
- test_routes_file = expected_path + '/routes.rb'
123
- ViewForGenerator.any_instance.stubs(:destination_path).returns test_routes_file
124
- ScaffoldForViewGenerator.any_instance.stubs(:destination_path).returns test_routes_file
125
- FileUtils.copy(standard_routes_file, test_routes_file)
126
- Rails::Generator::Commands::Create.any_instance.stubs(:route_file).returns(test_routes_file)
127
- @generator_script.run(generator_script_cmd_line(gen, ['--view', 'auto_complete:address']))
128
- assert_equal File.open(expected_routes_file).read, File.open(test_routes_file).read
129
- File.delete(test_routes_file)
149
+ @generator_script.run(generator_script_cmd_line('scaffold_for_view', ['--view', 'auto_complete']))
130
150
  end
131
151
  end
132
152
  end
133
153
 
134
- context "A Rails generator script" do
135
- setup do
136
- setup_test_model
137
- @generator_script = Rails::Generator::Scripts::Generate.new
138
- end
139
-
140
- should "not perform any actions when run on the scaffold_for_view generator with no auto_complete field" do
141
- Rails::Generator::Commands::Create.any_instance.expects(:directory).never
142
- Rails::Generator::Commands::Create.any_instance.expects(:template).never
143
- Rails::Generator::Commands::Create.any_instance.expects(:route_resources).never
144
- Rails::Generator::Commands::Create.any_instance.expects(:file).never
145
- Rails::Generator::Commands::Create.any_instance.expects(:route).never
146
- Rails::Generator::Base.logger.stubs(:error)
147
- Rails::Generator::Base.logger.stubs(:route)
148
- @generator_script.run(generator_script_cmd_line('scaffold_for_view', ['--view', 'auto_complete']))
149
- end
150
- end
151
-
152
154
  end
@@ -1,14 +1,14 @@
1
- <h1>Editing testy</h1>
1
+ <h1>Editing test_model</h1>
2
2
 
3
- <% form_for(@testy) do |f| %>
3
+ <% form_for(@test_model) do |f| %>
4
4
  <%= f.error_messages %>
5
5
  <p>
6
6
  <%= f.label :first_name %><br />
7
- <%= text_field_with_auto_complete :testy, :first_name, {}, { :method => :get } %>
7
+ <%= text_field_with_auto_complete :test_model, :first_name, {}, { :method => :get } %>
8
8
  </p>
9
9
  <p>
10
10
  <%= f.label :last_name %><br />
11
- <%= text_field_with_auto_complete :testy, :last_name, {}, { :method => :get } %>
11
+ <%= text_field_with_auto_complete :test_model, :last_name, {}, { :method => :get } %>
12
12
  </p>
13
13
  <p>
14
14
  <%= f.label :address %><br />
@@ -23,5 +23,5 @@
23
23
  </p>
24
24
  <% end %>
25
25
 
26
- <%= link_to 'Show', @testy %> |
27
- <%= link_to 'Back', testies_path %>
26
+ <%= link_to 'Show', @test_model %> |
27
+ <%= link_to 'Back', test_models_path %>
@@ -1,5 +1,5 @@
1
1
  ActionController::Routing::Routes.draw do |map|
2
- map.connect 'auto_complete_for_testy_address', :controller => 'testies', :action => 'auto_complete_for_testy_address'
2
+ map.connect 'auto_complete_for_test_model_address', :controller => 'test_models', :action => 'auto_complete_for_test_model_address'
3
3
 
4
4
  # The priority is based upon order of creation: first created -> highest priority.
5
5
 
@@ -1,4 +1,4 @@
1
- <h1>Listing testies</h1>
1
+ <h1>Listing test_models</h1>
2
2
 
3
3
  <table>
4
4
  <tr>
@@ -8,19 +8,19 @@
8
8
  <th>Some flag</th>
9
9
  </tr>
10
10
 
11
- <% @testies.each do |testy| %>
11
+ <% @test_models.each do |test_model| %>
12
12
  <tr>
13
- <td><%=h testy.first_name %></td>
14
- <td><%=h testy.last_name %></td>
15
- <td><%=h testy.address %></td>
16
- <td><%=h testy.some_flag %></td>
17
- <td><%= link_to 'Show', testy %></td>
18
- <td><%= link_to 'Edit', edit_testy_path(testy) %></td>
19
- <td><%= link_to 'Destroy', testy, :confirm => 'Are you sure?', :method => :delete %></td>
13
+ <td><%=h test_model.first_name %></td>
14
+ <td><%=h test_model.last_name %></td>
15
+ <td><%=h test_model.address %></td>
16
+ <td><%=h test_model.some_flag %></td>
17
+ <td><%= link_to 'Show', test_model %></td>
18
+ <td><%= link_to 'Edit', edit_test_model_path(test_model) %></td>
19
+ <td><%= link_to 'Destroy', test_model, :confirm => 'Are you sure?', :method => :delete %></td>
20
20
  </tr>
21
21
  <% end %>
22
22
  </table>
23
23
 
24
24
  <br />
25
25
 
26
- <%= link_to 'New testy', new_testy_path %>
26
+ <%= link_to 'New test_model', new_test_model_path %>
@@ -1,14 +1,14 @@
1
- <h1>New testy</h1>
1
+ <h1>New test_model</h1>
2
2
 
3
- <% form_for(@testy) do |f| %>
3
+ <% form_for(@test_model) do |f| %>
4
4
  <%= f.error_messages %>
5
5
  <p>
6
6
  <%= f.label :first_name %><br />
7
- <%= text_field_with_auto_complete :testy, :first_name, {}, { :method => :get } %>
7
+ <%= text_field_with_auto_complete :test_model, :first_name, {}, { :method => :get } %>
8
8
  </p>
9
9
  <p>
10
10
  <%= f.label :last_name %><br />
11
- <%= text_field_with_auto_complete :testy, :last_name, {}, { :method => :get } %>
11
+ <%= text_field_with_auto_complete :test_model, :last_name, {}, { :method => :get } %>
12
12
  </p>
13
13
  <p>
14
14
  <%= f.label :address %><br />
@@ -23,4 +23,4 @@
23
23
  </p>
24
24
  <% end %>
25
25
 
26
- <%= link_to 'Back', testies_path %>
26
+ <%= link_to 'Back', test_models_path %>
@@ -1,23 +1,23 @@
1
1
  <p>
2
2
  <b>First name:</b>
3
- <%=h @testy.first_name %>
3
+ <%=h @test_model.first_name %>
4
4
  </p>
5
5
 
6
6
  <p>
7
7
  <b>Last name:</b>
8
- <%=h @testy.last_name %>
8
+ <%=h @test_model.last_name %>
9
9
  </p>
10
10
 
11
11
  <p>
12
12
  <b>Address:</b>
13
- <%=h @testy.address %>
13
+ <%=h @test_model.address %>
14
14
  </p>
15
15
 
16
16
  <p>
17
17
  <b>Some flag:</b>
18
- <%=h @testy.some_flag %>
18
+ <%=h @test_model.some_flag %>
19
19
  </p>
20
20
 
21
21
 
22
- <%= link_to 'Edit', edit_testy_path(@testy) %> |
23
- <%= link_to 'Back', testies_path %>
22
+ <%= link_to 'Edit', edit_test_model_path(@test_model) %> |
23
+ <%= link_to 'Back', test_models_path %>
@@ -4,7 +4,7 @@
4
4
  <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
5
5
  <head>
6
6
  <meta http-equiv="content-type" content="text/html;charset=UTF-8" />
7
- <title>Testies: <%= controller.action_name %></title>
7
+ <title>TestModels: <%= controller.action_name %></title>
8
8
  <%= stylesheet_link_tag 'scaffold' %>
9
9
  <%= javascript_include_tag :defaults %>
10
10
  </head>
@@ -0,0 +1,89 @@
1
+ class TestModelsController < ApplicationController
2
+
3
+ auto_complete_for :test_model, :first_name
4
+ auto_complete_for :test_model, :last_name
5
+
6
+ # GET /test_models
7
+ # GET /test_models.xml
8
+ def index
9
+ @test_models = TestModel.all
10
+
11
+ respond_to do |format|
12
+ format.html # index.html.erb
13
+ format.xml { render :xml => @test_models }
14
+ end
15
+ end
16
+
17
+ # GET /test_models/1
18
+ # GET /test_models/1.xml
19
+ def show
20
+ @test_model = TestModel.find(params[:id])
21
+
22
+ respond_to do |format|
23
+ format.html # show.html.erb
24
+ format.xml { render :xml => @test_model }
25
+ end
26
+ end
27
+
28
+ # GET /test_models/new
29
+ # GET /test_models/new.xml
30
+ def new
31
+ @test_model = TestModel.new
32
+
33
+ respond_to do |format|
34
+ format.html # new.html.erb
35
+ format.xml { render :xml => @test_model }
36
+ end
37
+ end
38
+
39
+ # GET /test_models/1/edit
40
+ def edit
41
+ @test_model = TestModel.find(params[:id])
42
+ end
43
+
44
+ # POST /test_models
45
+ # POST /test_models.xml
46
+ def create
47
+ @test_model = TestModel.new(params[:test_model])
48
+
49
+ respond_to do |format|
50
+ if @test_model.save
51
+ flash[:notice] = 'TestModel was successfully created.'
52
+ format.html { redirect_to(@test_model) }
53
+ format.xml { render :xml => @test_model, :status => :created, :location => @test_model }
54
+ else
55
+ format.html { render :action => "new" }
56
+ format.xml { render :xml => @test_model.errors, :status => :unprocessable_entity }
57
+ end
58
+ end
59
+ end
60
+
61
+ # PUT /test_models/1
62
+ # PUT /test_models/1.xml
63
+ def update
64
+ @test_model = TestModel.find(params[:id])
65
+
66
+ respond_to do |format|
67
+ if @test_model.update_attributes(params[:test_model])
68
+ flash[:notice] = 'TestModel was successfully updated.'
69
+ format.html { redirect_to(@test_model) }
70
+ format.xml { head :ok }
71
+ else
72
+ format.html { render :action => "edit" }
73
+ format.xml { render :xml => @test_model.errors, :status => :unprocessable_entity }
74
+ end
75
+ end
76
+ end
77
+
78
+ # DELETE /test_models/1
79
+ # DELETE /test_models/1.xml
80
+ def destroy
81
+ @test_model = TestModel.find(params[:id])
82
+ @test_model.destroy
83
+
84
+ respond_to do |format|
85
+ format.html { redirect_to(test_models_url) }
86
+ format.xml { head :ok }
87
+ end
88
+ end
89
+ end