我正在创建一个应用程序,用户登录到Oracle数据库并运行准备好的查询。我想使用ActiveRecord来帮助运行查询,但我遇到了一些问题。在Rails应用程序中无法解救错误
当用户试图登录,我的测试运行
def test (username, password)
ActiveRecord::Base.establish_connection({
:adapter => 'oracle_enhanced',
:database => '//database:1521/test',
:username => username,
:password => password
})
end
然而,连接如果用户输入不正确的登录信息,我得到以下错误:
OCIError
ORA-01017: invalid username/password; logon denied
在铁轨上页。当我尝试重新加载登录页面时,它一直显示该错误并且不显示实际的登录页面。消除此错误的唯一方法是重新启动整个导轨应用程序。
这是因为我试图建立连接到不同的数据库,但它失败了,它不知道该怎么办?有什么办法可以防止这种情况发生?
见对此事进行类似的帖子:http://stackoverflow.com/questions/1226182/how-do -i-work-with-two-different-databases-in-rails-with-active-records – lebreeze 2013-05-02 06:40:42
我无法将数据库信息添加到'database.yml'中,因为用户必须使用他/她自己的凭证登录,而且我可以在此之前,不建立与数据库的连接。 – josh 2013-05-02 06:43:21