ActiveRecord的配置错误 - ActiveRecord :: AdapterNotSpecified

时间:2016-11-14 10:33:10

标签: ruby activerecord

为什么程序没有运行?

list.rb

require 'active_record'
require 'yaml'

ActiveRecord::Base.configurations = YAML.load_file('./database.yml')
ActiveRecord::Base.establish_connection('development')

class Student < ActiveRecord::Base
end

student = Student.find('123')
puts student.id
puts student.name

的database.yml

default: &default
  adapter: sqlite3
  encoding: unicode
  pool: 5

development:
  <<: *default
  database: my_database_name

list.db

源码&GT;从学生中选择*;

123|foo|foo@email.com

错误

../activerecord-5.0.0.1/lib/active_record/connection_adapters/connection_specification.rb:170:in `spec': database configuration does not specify adapter (ActiveRecord::AdapterNotSpecified)

1 个答案:

答案 0 :(得分:0)

在我的情况下,我使用字符串来识别我想要使用的数据库配置而不是符号(Rails 5似乎需要)

试试这个:

ActiveRecord::Base.establish_connection(:development)