Changeset 4997
- Timestamp:
- 09/04/06 20:01:52 (2 years ago)
- Files:
-
- trunk/actionpack/CHANGELOG (modified) (1 diff)
- trunk/actionpack/lib/action_view/base.rb (modified) (1 diff)
- trunk/actionpack/test/controller/render_test.rb (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/actionpack/CHANGELOG
r4995 r4997 1 1 *SVN* 2 3 * Added locals hash to partials, which makes for convenient access of some times available/some times not variables #5491 [wbruce@gmail.com]. Example: 4 5 # two different render calls 6 render :partial => "person", :locals => { :include_overview => true } 7 render :partial => "person" 8 9 # view 10 <% if locals[:include_overview] %> 11 Show overview 12 <% end %> 2 13 3 14 * Fixed FormOptionsHelper#select to respect :selected value #5813 trunk/actionpack/lib/action_view/base.rb
r4885 r4997 457 457 @@template_args[render_symbol] = locals_keys.inject({}) { |h, k| h[k] = true; h } 458 458 459 locals_code = " "459 locals_code = "locals = local_assigns.with_indifferent_access\n" 460 460 locals_keys.each do |key| 461 461 locals_code << "#{key} = local_assigns[:#{key}] if local_assigns.has_key?(:#{key})\n" trunk/actionpack/test/controller/render_test.rb
r4977 r4997 93 93 ActionView::Base.local_assigns_support_string_keys = false 94 94 end 95 96 def accessing_locals_hash_in_inline_template 97 name = params[:local_name] 98 render :inline => "<%= 'Goodbye, ' + locals[:local_name] %>", 99 :locals => { :local_name => name } 100 end 101 102 def accessing_locals_hash_in_inline_template_setting_string_key 103 name = params[:local_name] 104 ActionView::Base.local_assigns_support_string_keys = true 105 render :inline => "<%= 'Goodbye, ' + locals[:local_name] %>", 106 :locals => { "local_name" => name } 107 ActionView::Base.local_assigns_support_string_keys = false 108 end 109 110 def accessing_locals_hash_in_inline_template_getting_string_key 111 name = params[:local_name] 112 ActionView::Base.local_assigns_support_string_keys = true 113 render :inline => "<%= 'Goodbye, ' + locals['local_name'] %>", 114 :locals => { :local_name => name } 115 ActionView::Base.local_assigns_support_string_keys = false 116 end 95 117 96 118 def render_to_string_test