aboutsummaryrefslogtreecommitdiffstats
path: root/actionpack/lib/action_view
diff options
context:
space:
mode:
authorJeremy Kemper <jeremy@bitsweat.net>2007-05-18 00:36:14 +0000
committerJeremy Kemper <jeremy@bitsweat.net>2007-05-18 00:36:14 +0000
commit1ac7cd56fe4b49f0d30c96b2ec68abde8b05ee18 (patch)
tree9efe8a7754037e0782c8872f04f3703c6aa10f4f /actionpack/lib/action_view
parentebee0a742d40f87bb9b78d5d88393c341761cfad (diff)
downloadrails-1ac7cd56fe4b49f0d30c96b2ec68abde8b05ee18.tar.gz
rails-1ac7cd56fe4b49f0d30c96b2ec68abde8b05ee18.tar.bz2
rails-1ac7cd56fe4b49f0d30c96b2ec68abde8b05ee18.zip
Clean up the simply_helpful merge.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@6751 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
Diffstat (limited to 'actionpack/lib/action_view')
-rw-r--r--actionpack/lib/action_view/helpers/form_helper.rb3
-rw-r--r--actionpack/lib/action_view/helpers/prototype_helper.rb1
-rw-r--r--actionpack/lib/action_view/helpers/url_helper.rb2
-rw-r--r--actionpack/lib/action_view/partials.rb33
4 files changed, 28 insertions, 11 deletions
diff --git a/actionpack/lib/action_view/helpers/form_helper.rb b/actionpack/lib/action_view/helpers/form_helper.rb
index d307c194d2..c985a22edb 100644
--- a/actionpack/lib/action_view/helpers/form_helper.rb
+++ b/actionpack/lib/action_view/helpers/form_helper.rb
@@ -167,6 +167,7 @@ module ActionView
object = record_or_name
object_name = ActionController::RecordIdentifier.singular_class_name(record_or_name)
apply_form_for_options!(object, options)
+ args.unshift object
end
concat(form_tag(options.delete(:url) || {}, options.delete(:html) || {}), proc.binding)
@@ -184,7 +185,7 @@ module ActionView
options[:html] ||= {}
options[:html].reverse_merge!(html_options)
- options[:url] ||= polymorphic_path(object, self)
+ options[:url] ||= polymorphic_path(object)
end
# Creates a scope around a specific model object like form_for, but doesn't create the form tags themselves. This makes
diff --git a/actionpack/lib/action_view/helpers/prototype_helper.rb b/actionpack/lib/action_view/helpers/prototype_helper.rb
index 9bf9a71df2..1586a99e4c 100644
--- a/actionpack/lib/action_view/helpers/prototype_helper.rb
+++ b/actionpack/lib/action_view/helpers/prototype_helper.rb
@@ -191,6 +191,7 @@ module ActionView
object = record_or_name
object_name = ActionController::RecordIdentifier.singular_class_name(record_or_name)
apply_form_for_options!(object, options)
+ args.unshift object
end
concat(form_remote_tag(options), proc.binding)
diff --git a/actionpack/lib/action_view/helpers/url_helper.rb b/actionpack/lib/action_view/helpers/url_helper.rb
index 2329fb4bc6..d22a1464a0 100644
--- a/actionpack/lib/action_view/helpers/url_helper.rb
+++ b/actionpack/lib/action_view/helpers/url_helper.rb
@@ -75,7 +75,7 @@ module ActionView
url = @controller.send(:url_for, nil)
else
escape = false
- url = polymorphic_path(options, self)
+ url = polymorphic_path(options)
end
escape ? html_escape(url) : url
diff --git a/actionpack/lib/action_view/partials.rb b/actionpack/lib/action_view/partials.rb
index 3d57574aaf..4d7e276255 100644
--- a/actionpack/lib/action_view/partials.rb
+++ b/actionpack/lib/action_view/partials.rb
@@ -48,19 +48,34 @@ module ActionView
private
# Deprecated, use render :partial
def render_partial(partial_path, local_assigns = nil, deprecated_local_assigns = nil) #:nodoc:
- path, partial_name = partial_pieces(partial_path)
- object = extracting_object(partial_name, local_assigns, deprecated_local_assigns)
- local_assigns = extract_local_assigns(local_assigns, deprecated_local_assigns)
- local_assigns = local_assigns ? local_assigns.clone : {}
- add_counter_to_local_assigns!(partial_name, local_assigns)
- add_object_to_local_assigns!(partial_name, local_assigns, object)
+ case partial_path
+ when String, Symbol, NilClass
+ path, partial_name = partial_pieces(partial_path)
+ object = extracting_object(partial_name, local_assigns, deprecated_local_assigns)
+ local_assigns = extract_local_assigns(local_assigns, deprecated_local_assigns)
+ local_assigns = local_assigns ? local_assigns.clone : {}
+ add_counter_to_local_assigns!(partial_name, local_assigns)
+ add_object_to_local_assigns!(partial_name, local_assigns, object)
- if logger
- ActionController::Base.benchmark("Rendered #{path}/_#{partial_name}", Logger::DEBUG, false) do
+ if logger
+ ActionController::Base.benchmark("Rendered #{path}/_#{partial_name}", Logger::DEBUG, false) do
+ render("#{path}/_#{partial_name}", local_assigns)
+ end
+ else
render("#{path}/_#{partial_name}", local_assigns)
end
+ when Array
+ if partial_path.any?
+ path = ActionController::RecordIdentifier.partial_path(partial_path.first)
+ collection = partial_path
+ render_partial_collection(path, collection, nil, local_assigns.value)
+ else
+ ""
+ end
else
- render("#{path}/_#{partial_name}", local_assigns)
+ render_partial(
+ ActionController::RecordIdentifier.partial_path(partial_path),
+ local_assigns, deprecated_local_assigns)
end
end