【发布时间】:2015-01-04 02:16:03
【问题描述】:
我正在尝试将我的 rails 应用程序从版本 4.1.6 更新到 4.2.0。 几乎一切都进展顺利,除了我有两个数据库连接(一个是默认的 Postgres,另一个用于从另一个遗留应用程序读取数据)。第二个使用 Firebird (fb) 适配器。 在 Rails 4.2 中,我无法对第二个 (fb) 数据库做任何事情。所有命令都会导致此错误:
NoMethodError: 未定义的方法“编译”#
为了重现该案例,我使用适配器“fb”和一个名为 Foo 的简单模型(具有两个字符串列)从头开始创建了一个新应用程序。在我从 Rails 控制台调用命令后,Foo.count
结果是一样的。
Here is the full call stack for the problem
我试图调查来源,但无法确定问题出在哪里。我认为这是由于版本 4.2 中的 activerecord 中的一些更改/优化,但我不知道确切。
提前感谢您的帮助。
【问题讨论】:
-
According to Brent Rowland 这是因为适配器还不兼容 4.2(ruby 显然不提供二进制兼容性)
-
好的,我将我的应用程序降级为仍在使用 Rails 4.1。谢谢@MarkRotteveel。
-
感谢@Mario 的提示。我确实看到拉取请求已关闭,但我没有看到 gem 版本更新(问题发生一天后)。
标签: ruby-on-rails rails-activerecord firebird activerecord-fb-adapter