mongoid和mongo之间的冲突(mongo-ruby-driver)
我需要在我的Rails应用程序中使用两个gemmongoid
和mongo
。
任何想法解决这个麻烦的问题谢谢〜
gem 'mongo', '2.0.2',:git => 'git://github.com/mongodb/mongo-ruby-driver.git' gem 'mongoid', '4.0.0' # gem "mongo_mapper"
错误信息
Bundler could not find compatible versions for gem "bson": In Gemfile: mongo (= 2.0.2) ruby depends on bson (~> 3.0) ruby mongoid (= 4.0.0) ruby depends on moped (~> 2.0.0) ruby depends on bson (~> 2.2) ruby
UPDATE
Mongoid很方便,但有时很糟糕,
因为我收到错误'Client Error: Remaining data too small for BSON object
,
甚至我把它包装在begin rescue block
,它仍然会破坏我的Rails应用程序,并停止导入数据任务,吮吸Mongoid是什么! 所以我决定放弃使用Mongoid将新记录插入到集合中,我尝试使用mongo
。 但它们在我的Rails应用程序中是冲突,WTH再次出现!
def bulk_insert_to_collection(collection_name) model = collection_name.capitalize.constantize.new begin model.collection.insert(@data_in_chunk) # @bulk.execute rescue Exception=>err log_error "[#{err}] File #{@file_path}: line of #{i} #{Time.now}" rescue Exception => err log_error "[#{err}] File #{@file_path}: line of #{i} #{Time.now}" rescue => err p ex log_error "[#{err}] File #{@file_path}: line of #{i} #{Time.now}" end # @data_in_chunk = [] end