如何在 mongoid.yml 中的同一 Rails 环境中设置多个数据库(不同的)连接?
How can I setup multiple database(different) connection on the same Rails environment in mongoid.yml?
(即某些模型将使用默认数据库,而其他模型将在模型中明确定义时使用第二个数据库)。
我找不到这方面的任何最新参考资料。
我想知道下面提到的类似内容是否可行。
mongoid.yml
development:
clients:
default:
uri: <%=ENV['DEFAULT_DB']%>
mongo_db:
uri: <%=ENV['SECOND_DB']%>
graph_metric.rb
class GraphMetric
include Mongoid::Document
include Mongoid::Timestamps
#Connects to default
field :timestamp, type: DateTime
end
system_metric.rb
class SystemMetric
include Mongoid::Document
include Mongoid::Timestamps
#Connect to mongo_db
some method to establish_connection
field :timestamp, type: DateTime
end
store_in
client
能为您解决问题吗?
(参见 https://docs.mongodb.com/mongoid/master/tutorials/mongoid-documents/#storage)
这有效。
mongoid.yml
development:
clients:
default:
uri: <%=ENV['DEFAULT_DB']%>
mongo_db:
uri: <%=ENV['SECOND_DB']%>
graph_metric.rb
class GraphMetric
include Mongoid::Document
include Mongoid::Timestamps
#Connects to default
field :timestamp, type: DateTime
end
system_metric.rb
class SystemMetric
include Mongoid::Document
include Mongoid::Timestamps
#Connect to mongo_db
store_in client: :mongo_db
field :timestamp, type: DateTime
end
(即某些模型将使用默认数据库,而其他模型将在模型中明确定义时使用第二个数据库)。
我找不到这方面的任何最新参考资料。 我想知道下面提到的类似内容是否可行。
mongoid.yml
development:
clients:
default:
uri: <%=ENV['DEFAULT_DB']%>
mongo_db:
uri: <%=ENV['SECOND_DB']%>
graph_metric.rb
class GraphMetric
include Mongoid::Document
include Mongoid::Timestamps
#Connects to default
field :timestamp, type: DateTime
end
system_metric.rb
class SystemMetric
include Mongoid::Document
include Mongoid::Timestamps
#Connect to mongo_db
some method to establish_connection
field :timestamp, type: DateTime
end
store_in
client
能为您解决问题吗?
(参见 https://docs.mongodb.com/mongoid/master/tutorials/mongoid-documents/#storage)
这有效。
mongoid.yml
development:
clients:
default:
uri: <%=ENV['DEFAULT_DB']%>
mongo_db:
uri: <%=ENV['SECOND_DB']%>
graph_metric.rb
class GraphMetric
include Mongoid::Document
include Mongoid::Timestamps
#Connects to default
field :timestamp, type: DateTime
end
system_metric.rb
class SystemMetric
include Mongoid::Document
include Mongoid::Timestamps
#Connect to mongo_db
store_in client: :mongo_db
field :timestamp, type: DateTime
end