情シスは何度でも甦るさ。

OracleDB/Ruby好きの情シス部員がお送りします

sinatra-activerecordでConnectionNotEstablished

最近、rubysinatraにハマってます。
で、ormは、sequelを使っていたのだが、勉強がてらactiverecord使ったらはまったはまった。

migrate機能を使う為に sinatra-activerecord を使ったのだが、ConnectionNotEstablished連発。

$ bundle exec rake db:migrate
rake aborted!
ActiveRecord::ConnectionNotEstablished
/~/src/vendor/bundle/ruby/2.0.0/gems/activerecord-4.0.0/lib/active_record/connection_adapters/abstract/connection_pool.rb:546:in `retrieve_connection'


参考記事:SinatraからActiveRecord 3を使う

で、多分DBにうまくつながってないと思ってああだこうだやってたら解決。
やはり、requireがうまくきいてなかったのでした。とほほ

#app.rb
require なし

#config.ru

require 'bundler'
Bundler.require
require 'app.rb'

参考サイトほぼそのまま。

で、問題はこいつ
#Rakefile

require 'sinatra'
require 'sinatra/activerecord'
require 'sinatra/activerecord/rake'

ここで、1行目が無いと動きませんでした。がっくし

activerecrdが、4.0.0が原因かとか、config/database.ymlが、うまく読めてないんじゃないかとか、色々調べたけど、そんなこと関係なかったでげす。

大変勉強になりました。