在 Rails + Mongoid 安装之上添加 ActiveRecord
Adding ActiveRecord on top of a Rails + Mongoid install
我有一个 Rails 5.2 和 Mongoid 7 的现有项目,我之前禁用了所有与 activerecord 相关的模块。
我们正在努力与商业智能数据仓库同步,我发现 this gem 这似乎是一个很好的起点:我打算将 ActiveRecord 与此适配器一起使用,以轻松实现将推送的代码数据到我的 Amazon Aurora 数据库以用于 BI。
我创建了一个简单的模型
# model/test.rb
class Test < ActiveRecord::Base
end
我加了一个database.yml
# config/database.yml
development:
adapter: aurora_serverless
...
但是当我尝试对模型执行任何操作时,它说无法连接
ActiveRecord::ConnectionNotEstablished: No connection with pool with 'primary' found
我是否遗漏了其他让 ActiveRecord 工作的东西?我需要一些额外的 Railties 等吗?就好像 database.yml 文件根本没有被读取一样
这是我最后做的事情的总结
在您的 Gemfile 中添加所需的 gems(事实上,我添加的 gem 甚至不需要 mysql2 gem 这让我松了一口气,因为 mysql2 依赖于本地 OS 库,而且您很可能会遇到很多错误)
创建一个 config/database.yml
文件,并根据您需要的每个环境和您需要的 AR 配置设置一个密钥
在application.rb中,添加require 'active_record/railtie'
(railtie将从database.yml文件初始化连接)
创建一些模型
也许您需要额外的适配器以适应 local/test/staging/prod 环境
如果您正在使用 docker-compose
,请为 SQL 数据库添加一个容器
我有一个 Rails 5.2 和 Mongoid 7 的现有项目,我之前禁用了所有与 activerecord 相关的模块。
我们正在努力与商业智能数据仓库同步,我发现 this gem 这似乎是一个很好的起点:我打算将 ActiveRecord 与此适配器一起使用,以轻松实现将推送的代码数据到我的 Amazon Aurora 数据库以用于 BI。
我创建了一个简单的模型
# model/test.rb
class Test < ActiveRecord::Base
end
我加了一个database.yml
# config/database.yml
development:
adapter: aurora_serverless
...
但是当我尝试对模型执行任何操作时,它说无法连接
ActiveRecord::ConnectionNotEstablished: No connection with pool with 'primary' found
我是否遗漏了其他让 ActiveRecord 工作的东西?我需要一些额外的 Railties 等吗?就好像 database.yml 文件根本没有被读取一样
这是我最后做的事情的总结
在您的 Gemfile 中添加所需的 gems(事实上,我添加的 gem 甚至不需要 mysql2 gem 这让我松了一口气,因为 mysql2 依赖于本地 OS 库,而且您很可能会遇到很多错误)
创建一个
config/database.yml
文件,并根据您需要的每个环境和您需要的 AR 配置设置一个密钥在application.rb中,添加
require 'active_record/railtie'
(railtie将从database.yml文件初始化连接)创建一些模型
也许您需要额外的适配器以适应 local/test/staging/prod 环境
如果您正在使用 docker-compose
,请为 SQL 数据库添加一个容器