我一直在尝试让我的 rails 程序访问在另一台机器上设置的现有 sql express 服务器。我已按照以下说明进行操作:GitHub并像这样设置我的 database.yml:
development:
adapter: sqlserver
mode: odbc
dns: Provider=SQLOLEDB;Data Source=MACHINENAME\SQLEXPRESS;UID=xxxx;PWD=xxxxx;Application Name=atlas
timeout: 5000
现在,当我尝试运行脚本/控制台(或服务器或其他)时,出现此错误:
/var/lib/gems/1.8/gems/activesupport-2.3.8/lib/active_support/dependencies.rb:440:in `load_missing_constant':NameError: uninitialized constant ActiveRecord::WrappedDatabaseException
我试过谷歌搜索和来回更改设置,但我一无所获。我是不是做错了什么?
BR,
圣光
最佳答案
我只能说将 Rails 3.0.3 与 SQLServer 2005 一起使用,所以希望对您有所帮助。
我已将其添加到我的 Gemfile
中:
gem 'ruby-odbc', '0.99991', :require => 'odbc'
gem 'activerecord-sqlserver-adapter', :branch => "arel2",
:git => "git://github.com/rails-sqlserver/activerecord-sqlserver-adapter"
并在我的 config/database.yml
中使用它:
test:
adapter: sqlserver
mode: ODBC
dsn: my_app_test
username: [USERNAME]
password: [PASSWORD]
DSN 在别处配置,但没有任何地方像您的配置那么复杂。我遵循了这些说明:http://github.com/rails-sqlserver/activerecord-sqlserver-adapter/wiki/Platform-Installation---Ubuntu
关于ruby-on-rails - 带有 Rails 的 SQL 服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4492279/