0
足夠簡單的情況。我有一個MongoDB數據庫,其中包含以前開發人員提供的大量信息。然而,我對手前的模型的信息有限,而且我不能訪問原始模型類。我一直在修改MongoDB驅動程序以獲得更多的信息(最終必須使用MongoID來將對象映射回去)如下。使用Mongoid從mongoDB獲取對象
#The flow is as follows
#Connection
#Databases
#Database
#Collection
#Hash Info
#Setup the connection. you can supply attributes in the form of ("db",portno) but most of the time it will pick up the defaults
conn = Mongo::Connection.new
#Database info
mongodbinfo =conn.database_names
conn.database_info.each { |info| puts info.inspect }
db = conn.db("db_name_here")
db.collection_names.each { |collection| puts collection.inspect }
collection = db.collection("model_name_here")
puts collection.inspect
collection.find.each { |row|
puts row.inspect
puts row.class
}
每一行都是一個單獨的對象,並且和MongoDB一樣,每個對象/文檔都是一個BSON對象。
所以底線的問題是我如何使用mongoID將BSON反序列化爲模型?
P.s隨意使用上面的代碼,如果你想找出一個新的mongoDB,它方便調試恕我直言。