ruby on rails - Fixnums as Symbols Warning from collection_select -
rails 2.3.5, ruby 1.86
i'm not understanding warning. i'm getting 1 warning each record containted in @directories when using @directories in collection_select. i've tried playing around :id instances using them differently no luck. i'm sure it's simple (i'm still pretty new).
thanks in advance!
error:
c:/ruby186/lib/ruby/gems/1.8/gems/actionpack-2.3.5/lib/action_view/helpers/form_options_helper.rb:328:
warning: not use fixnums symbols
the offending code:
<% if !params[:directory].nil? %> <%= collection_select :directory, :id, @directories, (:id).to_i, :name, {:selected => params[:directory][:id].map{|id|id.to_i}}, {:size => 7, :multiple => true} %> <% else %> <%= collection_select :directory, :id, @directories, (:id).to_i, :name, {:selected => @directory_ids}, {:size => 7, :multiple => true} %> <% end %>
you're passing in (:id).to_i argument collection_select. collection_select uses argument send. since (:id).to_i integer , send being called integer argument mistake, send emits warning get.
it should noted there no reason use :id.to_i instead of :id here since difference between send(:symbol) , send(:symbol.to_i) latter produces warning.
Comments
Post a Comment