2012-09-06 52 views
0

我正在使用ActiveRecord在thor腳本中創建與數據庫的連接。我在這種情況下使用的適配器是mysql2。我想添加一些救援塊到我的代碼,以便爲用戶提供一些特定的錯誤消息。在使用ActiveRecord時,爲什麼Mysql2 :: Error引發並且不是Activerecord錯誤?

當我關閉MySQL服務器在我的本地和嘗試(使用establish_connection)我得到以下錯誤(如預期)

Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2) (Mysql2::Error) 

爲什麼我沒有得到一個ActiveRecord :: ConnectionNotEstablished錯誤,而不是連接Mysql2 ::錯誤?我想問的原因是,Mysql2沒有具體的錯誤類型(基於https://github.com/brianmario/mysql2/blob/master/lib/mysql2/error.rb),而活動記錄呢(http://api.rubyonrails.org/files/activerecord/lib/active_record/errors_rb.html

使用Ruby 1.9.3和3.2.8的ActiveRecord與mysql2 0.3.11

謝謝!

回答

相關問題