Skip to content
This repository
Browse code

Remove eval calls, use send.. eval is evil

  • Loading branch information...
commit 4af62c02ae3dd0738965b167fbf07940e5d64daf 1 parent 6a5408b
Carlos Antonio da Silva authored January 25, 2012
6  actionpack/lib/action_view/helpers/form_options_helper.rb
@@ -334,7 +334,7 @@ def options_for_select(container, selected = nil)
334 334
         end.join("\n").html_safe
335 335
       end
336 336
 
337  
-      # Returns a string of option tags that have been compiled by iterating over the +collection+ and assigning 
  337
+      # Returns a string of option tags that have been compiled by iterating over the +collection+ and assigning
338 338
       # the result of a call to the +value_method+ as the option value and the +text_method+ as the option text.
339 339
       # Example:
340 340
       #   options_from_collection_for_select(@people, 'id', 'name')
@@ -418,9 +418,9 @@ def options_from_collection_for_select(collection, value_method, text_method, se
418 418
       # wrap the output in an appropriate <tt><select></tt> tag.
419 419
       def option_groups_from_collection_for_select(collection, group_method, group_label_method, option_key_method, option_value_method, selected_key = nil)
420 420
         collection.map do |group|
421  
-          group_label_string = eval("group.#{group_label_method}")
  421
+          group_label_string = group.send(group_label_method)
422 422
           "<optgroup label=\"#{ERB::Util.html_escape(group_label_string)}\">" +
423  
-            options_from_collection_for_select(eval("group.#{group_method}"), option_key_method, option_value_method, selected_key) +
  423
+            options_from_collection_for_select(group.send(group_method), option_key_method, option_value_method, selected_key) +
424 424
             '</optgroup>'
425 425
         end.join.html_safe
426 426
       end

0 notes on commit 4af62c0

Please sign in to comment.
Something went wrong with that request. Please try again.