aboutsummaryrefslogtreecommitdiffstats
path: root/actionpack
diff options
context:
space:
mode:
authorJosé Valim <jose.valim@gmail.com>2010-01-31 10:24:38 +0100
committerJosé Valim <jose.valim@gmail.com>2010-01-31 10:24:38 +0100
commitb3a028259f373fd58fea2171a1e9e8b2fe3e253a (patch)
tree723e7cbeb785042750cb9395002702437b8bae26 /actionpack
parent48459c82783c53e1ac671259d65c806384f60f2b (diff)
downloadrails-b3a028259f373fd58fea2171a1e9e8b2fe3e253a.tar.gz
rails-b3a028259f373fd58fea2171a1e9e8b2fe3e253a.tar.bz2
rails-b3a028259f373fd58fea2171a1e9e8b2fe3e253a.zip
Improve missing template error messages a little bit.
Diffstat (limited to 'actionpack')
-rw-r--r--actionpack/lib/action_view/base.rb17
-rw-r--r--actionpack/lib/action_view/paths.rb2
-rw-r--r--actionpack/test/controller/mime_responds_test.rb2
3 files changed, 13 insertions, 8 deletions
diff --git a/actionpack/lib/action_view/base.rb b/actionpack/lib/action_view/base.rb
index af13f2cd3e..07ef3f2140 100644
--- a/actionpack/lib/action_view/base.rb
+++ b/actionpack/lib/action_view/base.rb
@@ -6,15 +6,20 @@ module ActionView #:nodoc:
end
class MissingTemplate < ActionViewError #:nodoc:
- attr_reader :path, :action_name
+ attr_reader :path
- def initialize(paths, path, template_format = nil)
+ def initialize(paths, path, details, partial)
@path = path
- @action_name = path.split("/").last.split(".")[0...-1].join(".")
- full_template_path = path.include?('.') ? path : "#{path}.erb"
display_paths = paths.compact.join(":")
- template_type = (path =~ /layouts/i) ? 'layout' : 'template'
- super("Missing #{template_type} #{full_template_path} in view path #{display_paths}")
+ template_type = if partial
+ "partial"
+ elsif path =~ /layouts/i
+ 'layout'
+ else
+ 'template'
+ end
+
+ super("Missing #{template_type} #{path} with #{details.inspect} in view path #{display_paths}")
end
end
diff --git a/actionpack/lib/action_view/paths.rb b/actionpack/lib/action_view/paths.rb
index 0059b79e5f..6e55d69d00 100644
--- a/actionpack/lib/action_view/paths.rb
+++ b/actionpack/lib/action_view/paths.rb
@@ -45,7 +45,7 @@ module ActionView #:nodoc:
end
end
- raise ActionView::MissingTemplate.new(self, "#{prefix}/#{path} - #{details.inspect} - partial: #{!!partial}")
+ raise ActionView::MissingTemplate.new(self, "#{prefix}/#{path}", details, partial)
end
def exists?(path, extension = nil, prefix = nil, partial = false)
diff --git a/actionpack/test/controller/mime_responds_test.rb b/actionpack/test/controller/mime_responds_test.rb
index ba2347e4e2..3bd3369242 100644
--- a/actionpack/test/controller/mime_responds_test.rb
+++ b/actionpack/test/controller/mime_responds_test.rb
@@ -499,7 +499,7 @@ class RespondWithController < ActionController::Base
def using_resource_with_action
respond_with(resource, :action => :foo) do |format|
- format.html { raise ActionView::MissingTemplate.new([], "method") }
+ format.html { raise ActionView::MissingTemplate.new([], "foo/bar", {}, false) }
end
end