6

生成 rails 4.2.0 应用程序并添加 activerecord-postgis-adapter 并相应地编辑 database.yml 文件。

但是现在当我这样做时rake db:create,它会出现错误:

± be rake db:create                                                                                                         2.1.0
rake aborted!
NameError: uninitialized constant ActiveRecord::ConnectionAdapters::PostgreSQLAdapter::TableDefinition
/Users/millisami/Railsapps/showme/config/application.rb:16:in `<top (required)>'
/Users/millisami/Railsapps/showme/Rakefile:4:in `require'
/Users/millisami/Railsapps/showme/Rakefile:4:in `<top (required)>'
(See full trace by running task with --trace)
4

3 回答 3

6

显然,activerecord-postgis-adaptergem还不兼容 ActiveRecord 4.2

要么使用标准pggem(ActiveRecord 原生支持),要么降级到 4.1。

于 2014-12-28T13:13:30.170 回答
1

3.0.0 版activerecord-postgis-adapter已经发布。它支持 ActiveRecord 4.2。

gem "activerecord-postgis-adapter"

https://github.com/rgeo/activerecord-postgis-adapter

https://rubygems.org/gems/activerecord-postgis-adapter

于 2015-05-29T23:45:48.980 回答
0

正如 ob1 在已接受答案的评论中所指出的那样,在撰写本文时,postgis 适配器有一个支持 ActiveRecord 4.2 的 beta 版本。这是 Simone Carletti 提供的链接中的文本:

这个分支作为 3.0.0.beta1 发布。测试:

gem "activerecord-postgis-adapter", "3.0.0.beta1" ActiveRecord 4.2 中对 PostgreSQL 适配器进行了重大更改,在单个代码库中支持以前的版本非常麻烦。因此,此适配器将仅在 master 分支和 3.0 版本中支持 ActiveRecord 4.2 及更高版本,而不是有条件地支持 ActiveRecord 的早期版本。

activerecord-postgis-adapter 2.x 版将继续支持 ActiveRecord 4.0 和 4.1。

activerecord-postgis-adapter 3.x 版将支持 ActiveRecord 4.2 及更高版本。

于 2015-05-08T15:25:25.617 回答