diff --git a/vendor/plugins/blitz/features/step_definitions/view_steps.rb b/vendor/plugins/blitz/features/step_definitions/view_steps.rb
index c180687..d379608 100644
--- a/vendor/plugins/blitz/features/step_definitions/view_steps.rb
+++ b/vendor/plugins/blitz/features/step_definitions/view_steps.rb
@@ -45,3 +45,21 @@ Then /^an empty "(.*)" view for "posts" should be generated$/ do |view|
assert_generated_empty_file("app/views/posts/#{view}.html.erb")
end
+Then /^a model\-reflected "index" view for "posts" should be generated$/ do
+ assert_generated_file("app/views/posts/index.html.erb") do
+ "
Posts
\n\n" <<
+ "\n" <<
+ " <% @posts.each do |post| -%>\n" <<
+ " - <%= link_to post.to_s, post_path(post) %>
\n" <<
+ " <% end -%>\n" <<
+ "
\n"
+ end
+end
+
+Then /^a non\-model\-reflected "index" view for "posts" should be generated$/ do
+ assert_generated_file("app/views/posts/index.html.erb") do
+ "Posts
"
+ end
+end
+
+
diff --git a/vendor/plugins/blitz/features/view_generator.feature b/vendor/plugins/blitz/features/view_generator.feature
index 2e26d92..21dc679 100644
--- a/vendor/plugins/blitz/features/view_generator.feature
+++ b/vendor/plugins/blitz/features/view_generator.feature
@@ -20,18 +20,19 @@ Feature: Rails view generator
Given a Rails app
And the blitz plugin is installed
When I generate a Post model with title, body, and User
- When I generate a "new" view for "Posts" with the empty option
+ And I generate a "new" view for "Posts" with the empty option
Then an empty "new" view for "posts" should be generated
- Scenario: View generator for show action
+ Scenario: View generator for index action
Given a Rails app
And the blitz plugin is installed
- When I generate a "show" view for "Posts" with the empty option
- Then an empty "show" view for "posts" should be generated
+ When I generate a "index" view for "Posts"
+ Then a non-model-reflected "index" view for "posts" should be generated
Scenario: View generator for index action
Given a Rails app
And the blitz plugin is installed
- When I generate a "index" view for "Posts" with the empty option
- Then an empty "index" view for "posts" should be generated
+ When I generate a Post model with title, body, and User
+ And I generate a "index" view for "Posts"
+ Then a model-reflected "index" view for "posts" should be generated
diff --git a/vendor/plugins/blitz/generators/view/templates/index.html.erb b/vendor/plugins/blitz/generators/view/templates/index.html.erb
index 71375ad..fa0845a 100644
--- a/vendor/plugins/blitz/generators/view/templates/index.html.erb
+++ b/vendor/plugins/blitz/generators/view/templates/index.html.erb
@@ -1,4 +1,9 @@
-<%= resource %>
-
-<%%= link_to 'Edit', edit_<%= resource %>_path(@<%= resource %>) %>
+<%= resource_class.pluralize %>
+<% if active_record_defined? -%>
+
+ <%% @<%= resources %>.each do |<%= resource %>| -%>
+ - <%%= link_to <%= resource %>.to_s, <%= resource %>_path(<%= resource %>) %>
+ <%% end -%>
+
+<% end -%>
diff --git a/vendor/plugins/blitz/generators/view/view_generator.rb b/vendor/plugins/blitz/generators/view/view_generator.rb
index ed6a368..0002d98 100644
--- a/vendor/plugins/blitz/generators/view/view_generator.rb
+++ b/vendor/plugins/blitz/generators/view/view_generator.rb
@@ -14,12 +14,10 @@ class ViewGenerator < Rails::Generator::NamedBase
else
m.template 'new.html.erb', path
end
- elsif %w(index show).any? { |action| actions.include?(action) }
- actions.each do |action|
- path = File.join('app/views', class_path, file_name,
- "#{action}.html.erb")
- m.file 'empty.html.erb', path
- end
+ elsif actions.include?("index")
+ path = File.join('app/views', class_path, file_name,
+ "index.html.erb")
+ m.template "index.html.erb", path
end
end
end
--
libgit2 0.21.2