【发布时间】:2013-12-03 06:13:53
【问题描述】:
我正在开发一个非常简单的 ruby on rails 网站,使用 MongoDB 作为数据库。我的想法是让这个网站与 Mongoid 一起工作,这样我就可以显示现有 mongodb 集合中的某些内容。我在互联网上查看了有关如何使用 Mongoid 的教程,问题是所有这些都是关于如何使用 Rails 而不是使用现有的 Rails 创建你的 Mongodb。谁能告诉我该怎么做?非常感谢。
【问题讨论】:
我正在开发一个非常简单的 ruby on rails 网站,使用 MongoDB 作为数据库。我的想法是让这个网站与 Mongoid 一起工作,这样我就可以显示现有 mongodb 集合中的某些内容。我在互联网上查看了有关如何使用 Mongoid 的教程,问题是所有这些都是关于如何使用 Rails 而不是使用现有的 Rails 创建你的 Mongodb。谁能告诉我该怎么做?非常感谢。
【问题讨论】:
在您为收藏定义模型之前, 您必须下拉到 Moped 驱动程序级别以检查现有集合。 这是 Moped 文档的链接 - http://mongoid.org/en/moped/docs/driver.html
这里有一些提示可以帮助您入门。
控制台输入.rb
session = Mongoid.default_session
collection = session['test_collection']
collection.insert({name: 'George Washington'})
session.collection_names
collection.find.first
$ rails c
Loading development environment (Rails 3.2.14)
Switch to inspect mode.
session = Mongoid.default_session
<Moped::Session seeds=["localhost:27017"] database=sandbox_mongoid3_development>
collection = session['test_collection']
#<Moped::Collection:0x007ff2ceb73c20 @database=#<Moped::Database:0x007ff2ceb68b40 @session=<Moped::Session seeds=["localhost:27017"] database=sandbox_mongoid3_development>, @name="sandbox_mongoid3_development">, @name="test_collection">
collection.insert({name: 'George Washington'})
nil
session.collection_names
["test_collection"]
collection.find.first
{"_id"=>"528bdc60e277b0dd1681771a", "name"=>"George Washington"}
【讨论】: