3

我有一个 rails 3.2.12 应用程序,但是当我运行时rails s,出现以下错误:connection_specification.rb:45:in 'resolve_hash_connection': undefined method 'symbolize_keys' for #<String:0x00000006c16b40> (NoMethodError)

connection_specification.rb 相关方法:

def resolve_hash_connection(spec) # :nodoc:
  spec = spec.symbolize_keys # Line 45

  raise(AdapterNotSpecified, "database configuration does not specify adapter") unless spec.key?(:adapter)

  begin
    require "active_record/connection_adapters/#{spec[:adapter]}_adapter"
  rescue LoadError => e
    raise LoadError, "Please install the #{spec[:adapter]} adapter: `gem install activerecord-#{spec[:adapter]}-adapter` (#{e.message})", e.backtrace
  end

  adapter_method = "#{spec[:adapter]}_connection"

  ConnectionSpecification.new(spec, adapter_method)
end
4

1 回答 1

12

#symbolize_keys是一种将 aHash作为接收者的方法,但您在 a 上调​​用它String

于 2013-09-01T17:37:09.600 回答