Sql rails服务器命令出错
你能给我指一些介绍如何将SQLServer连接到Rails应用程序(Windows7)的好资源吗 到目前为止,我已经做了以下工作:Sql rails服务器命令出错,sql,ruby-on-rails,ruby,sql-server,windows,Sql,Ruby On Rails,Ruby,Sql Server,Windows,你能给我指一些介绍如何将SQLServer连接到Rails应用程序(Windows7)的好资源吗 到目前为止,我已经做了以下工作: rails新的simple\u cms–d sqlserver gem安装包 rails s 在最后一个命令之后,将抛出此错误: C:\Sites\s_cms>rails s C:/Ruby193/lib/ruby/gems/1.9.1/gems/activesupport-4.1.1/lib/active_support/core_ext/module/al
rails新的simple\u cms–d sqlserver
gem安装包
rails s
在最后一个命令之后,将抛出此错误:
C:\Sites\s_cms>rails s
C:/Ruby193/lib/ruby/gems/1.9.1/gems/activesupport-4.1.1/lib/active_support/core_ext/module/aliasing.rb:32:in `alias_method': undefined method `add_order!' for class `Class' (Name
Error)
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/activesupport-4.1.1/lib/active_support/core_ext/module/aliasing.rb:32:in `alias_method_chain'
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/activerecord-sqlserver-adapter-2.3.8/lib/active_record/connection_adapters/sqlserver_adapter/core_ext/active_record.rb:14:in `singletonclass'
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/activerecord-sqlserver-adapter-2.3.8/lib/active_record/connection_adapters/sqlserver_adapter/core_ext/active_record.rb:12:in `inc
luded'
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/activerecord-sqlserver-adapter-2.3.8/lib/active_record/connection_adapters/sqlserver_adapter/core_ext/active_record.rb:145:in `in
clude'
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/activerecord-sqlserver-adapter-2.3.8/lib/active_record/connection_adapters/sqlserver_adapter/core_ext/active_record.rb:145:in `<t
op (required)>'
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/activerecord-sqlserver-adapter-2.3.8/lib/active_record/connection_adapters/sqlserver_adapter.rb:3:in `require'
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/activerecord-sqlserver-adapter-2.3.8/lib/active_record/connection_adapters/sqlserver_adapter.rb:3:in `<top (required)>'
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/activerecord-sqlserver-adapter-2.3.8/lib/activerecord-sqlserver-adapter.rb:1:in `require'
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/activerecord-sqlserver-adapter-2.3.8/lib/activerecord-sqlserver-adapter.rb:1:in `<top (required)>'
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/bundler-1.6.1/lib/bundler/runtime.rb:76:in `require'
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/bundler-1.6.1/lib/bundler/runtime.rb:76:in `block (2 levels) in require'
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/bundler-1.6.1/lib/bundler/runtime.rb:72:in `each'
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/bundler-1.6.1/lib/bundler/runtime.rb:72:in `block in require'
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/bundler-1.6.1/lib/bundler/runtime.rb:61:in `each'
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/bundler-1.6.1/lib/bundler/runtime.rb:61:in `require'
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/bundler-1.6.1/lib/bundler.rb:132:in `require'
from C:/Sites/s_cms/config/application.rb:7:in `<top (required)>'
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/railties-4.1.1/lib/rails/commands/commands_tasks.rb:79:in `require'
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/railties-4.1.1/lib/rails/commands/commands_tasks.rb:79:in `block in server'
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/railties-4.1.1/lib/rails/commands/commands_tasks.rb:76:in `tap'
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/railties-4.1.1/lib/rails/commands/commands_tasks.rb:76:in `server'
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/railties-4.1.1/lib/rails/commands/commands_tasks.rb:40:in `run_command!'
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/railties-4.1.1/lib/rails/commands.rb:17:in `<top (required)>'
from bin/rails:4:in `require'
from bin/rails:4:in `<main>'
(当然,我之前也创建了一个名为cms的数据库,并添加了一个名为guest1的用户,使用指定的密码,然后通过模拟本地Sql Server本身的网络连接来确保凭据能够连接到数据库)
在执行此新操作后,我得到一个类似的错误,如上所述:
C:\Sites\simple_cms>rails s
C:/Ruby193/lib/ruby/gems/1.9.1/gems/activesupport-.1.1/lib/active_support/core_ext/module/aliasing.rb:32:in `alias_method': undefined method `add_order!' for class `Class' (Name Error)
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/activesupport-4.1.1/lib/active_support/core_ext/module/aliasing.rb:32:in `alias_method_chain'
...............
这是
activerecord sqlserver适配器的已知错误。它正在开发中,但尚未将任何修复合并到里程碑中
现在的解决办法似乎是将您的Gemfile
更改为:
gem 'activerecord-sqlserver-adapter', git: 'https://github.com/Desarrollo-CeSPI/activerecord-sqlserver-adapter.git'
此问题的详细信息以及解决此问题的努力是。非常感谢您,格雷姆。我按照您的建议编辑了GEM文件,然后再次运行rails s
。它提示我进行捆绑安装
——但在我尝试运行之后,我得到:抓取https://github.com/Desarrollo-CeSPI/activerecord-sqlserver-adapter.git 致命:无法访问'https://github.com/Desarrollo-CeSPI/activerecord-sqlserver-adapt er.git/':无法连接到github.com:443;重试git克隆时没有错误“https://github.com/Desarrollo-CeSPI/activerecord-sqlserver-adapter.gi t““C:/Ruby193/lib/ruby/gems/1.9.1/cache/bundler/git/activerecord-sqlserver-adapter-a19f0 dc7902…..
这是否又是因为代理?我想在我按照这里的建议设置HTTP_PROXY环境变量之后,我已经摆脱了这个问题:。我不知道如何强制bundle安装使用代理运行(语法??),或者这是否是问题所在。奇怪的是,我可以通过在浏览器中键入此地址连接到,因此我认为它可能再次成为代理。很可能是您的代理。该fork确实有一个有效的.gemspec,因此它应该可以工作。如果您可以访问存储库,您可能需要将其作为zip文件下载(除非您可以git clone
it)并在本地构建它。把它放在某个地方,然后在该目录下运行gem build activerecord sqlserver adapter.gempec
,然后再运行gem install
,我转到这个页面(),下载了zip文件(activerecord sqlserver adapter master.zip
),然后转到rails应用程序的根目录,在那里复制了解压缩的存档文件,在该目录中运行gem build activerecord sqlserver adapter.gempec
(称为activerecord sqlserver adapter master
)然后出现以下错误:C:\Sites\activerecord sqlserver adapter master>gem build activerecord-sqlserver-adapter.gemspec错误:找不到gemspec文件:activerecord sqlserver adapter.gemspec
感谢您的耐心等待…您确实在.gemspec文件所在的目录中吗?我刚刚在Windows上试用过,它成功了-当它解压缩文件时,它位于嵌套目录C:\activerecord sqlserver adapter master\activerecord sqlserver adapter master
。然而,我只是带着gempec进入目录并键入gembuilda
,使用它自动完成文件名并确保它是正确的。
gem 'activerecord-sqlserver-adapter', git: 'https://github.com/Desarrollo-CeSPI/activerecord-sqlserver-adapter.git'