Tag: mongodb

Ember-data和MongoDB,如何处理_id

我正在使用带有rails和MongoDB的ember-data,并且我在MongoDB中存储ID的方式存在问题 – 在_id字段中。 Ember-data将使用id作为ID的默认字段,所以我试图像这样覆盖它: App.User = DS.Model.extend primaryKey: “_id” name: DS.attr “string” image: DS.attr “string” 这似乎在大部分时间都有效,但在某些情况下我从ember说得到例外: 未捕获错误:断言失败:您的服务器返回带有密钥_id的哈希,但您没有映射 我怀疑这可能是ember-data中的一个错误,因为它仍处于开发阶段,但是我试图找到一种方法来将_id映射到服务器端的id中? 我正在使用mongoid来进行mongo映射。

mongoid,调用sub mapreduce的语法

http://cookbook.mongodb.org/patterns/unique_items_map_reduce/如何使用这样的sub mapreduce访问。 我尝试了一些方法: Transaction.all.limit(10).map_reduce(map, reduce).out(replace: ‘mr_result’).map_reduce(map1, reduce1).out(inline: true).raw Transaction.all.limit(10).map_reduce(map, reduce).map_reduce(map1, reduce1).out(inline: true).raw 结果失败: NoMethodError: undefined method `map_reduce’ for #

US-ASCII中的无效字节序列(Ruby 1.9 + rails 2.3.8 + mongodb + mongo_mapper)

我的设置是: linux + Ruby 1.9 + rails 2.3.8 + mongodb + mongo_mapper 我跟着http://railscasts.com/episodes/194-mongodb-and-mongomapper ,一切都好。 我可以成功插入英文字符串,但是当我插入一些中文字符串时,它会插入,但无法显示。 该网页显示了一个例外: invalid byte sequence in US-ASCII 我使用mongo命令查看mongodb中的数据,这是正确的。 但我不知道为什么rails无法显示它们。 提前致谢

如何使用MongoDB和Mongoid在Rails 3上进行适当的数据库测试(TDD)

如何通过Mongoid on Rails使用MongoDB编写适当的unit testing(以及针对该问题的集成测试)? 我问,因为与使用SQLite3相反,即使在运行测试时,我所做的一切仍然存在。 所以目前我正在编写创建测试,然后手动删除我所做的一切。 但是对于集成测试来说,它变得很烦人甚至很复杂。 我做的样本: before(:each) do @user = User.create!(@attr) end after(:each) do # MongoDB is not a transactional DB, so added objects (create) during tests can’t be rollbacked # checking for the existance of a similar object with exact :name and :email (regex make it case insensitive) cleanup = User.where(:name => […]

如何在Rails 3中并行使用Mongoid和ActiveRecord?

我正在使用rails 3,并使用ActiveRecord开始我的应用程序。 现在,我有很多模型,关系开始变得复杂,有些可以用Document-Oriented结构更简单地表达,所以我想尝试迁移到MongoDB并使用Mongoid。 我一直听说你没有必须使用所有MongoDB或者没有任何东西,但你可以在迁移时并行使用这两个。 我不知道如何从文档中解决这个问题。 例如,我有: class User :items end class Product < ActiveRecord::Base has_many :items end class Item < ActiveRecord::Base belongs_to :user belongs_to :product # alot of data that fits a hierarchical document-oriented structure end 我想在理想情况下首先用Mongoid文档替换我的Item activerecord模型,这样我的项目就存储在MongoDB中,我的Users和Products可以保留在我的SQL DB中 事情是,我不知道该怎么做。 我是以正确的方式来做这件事的吗? 也许另一种选择是保留基础AR项目 class Item < ActiveRecord::Base has_one :mongodb_item ?? # I know this is wrong […]

方法适用于开发但不适用于生产Rails MongoDB

我有优惠券课程,我希望我的应用程序检查并查看优惠券上剩余的计数以及优惠券的日期是否已过期。 我class上有以下方法来检查这两个方法。 Coupon class def self.get(code) where( :code => (normalize_code(code)), :$and => [ { :$or => [ { :coupon_count.gte => 1 }, { :coupon_count => nil } ] }, { :$or => [ { :expires_at.gt => Time.now.utc }, { :expires_at => nil } ] } ] ).first end 当我输入优惠券时,这在开发中工作正常。 但在生产中它不起作用。 我使用我的MongoDB shell创建优惠券,如下所示。 db.Coupon.insert({code:’#COUPONNAME’,discount_percent: 10, expires_at: […]

无法让mongoid使用Rails 4

我按照官方教程 。 我在我的Gemfile中注释了sqlite3以及以下行: gem ‘mongoid’, ‘~> 4’, github: ‘mongoid/mongoid’ gem ‘bson_ext’ 但是,我一直收到Specified ‘sqlite3’ for database adapter, but the gem is not loaded. Add gem “sqlite3” to your Gemfile. Specified ‘sqlite3’ for database adapter, but the gem is not loaded. Add gem “sqlite3” to your Gemfile. 原因似乎是database.yml仍然将sqlite列为数据库。 我怎么能让Rails使用生成的mongoid.yml? 用mongoid.yml替换database.yml的内容似乎没有办法 – 我得到了 ActiveRecord::AdapterNotSpecified: database configuration does not […]

获得至少一个关联对象的记录

我在mongoid中有以下架构: 用户有很多任务 – has_many:tasks 任务属于user – belongs_to:user 如何只有10个第一个用户至少有一个任务? 像这样的东西: User.where(:tasks.ne => [] ).limit(10)

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 […]

如何与许多父母建立许多自我指涉关系?

我想以最简单的方式模拟以下内容: 技能有许多依赖技能。 每项技能都应该独立存在,技能可能具备其他技能,这些技能是必备技能。 例如: Skill: Front-End Development Has Dependent Skills -> [HTML, CSS, SCSS] Skill: Web-Design Has Dependent Skills -> [HTML, CSS] Skill: HTML 我希望能够做到: @front_end_development.dependent_skills ##or a more semantic mapping 我可能想走上树,但我想不出最好的名字。 也许我想通过HTML引用Web-Design依赖它。 这种自我指涉是否有意义,或者事实是这会伤害我的大脑代码味道并乞求其他东西是理想的? 这一切都取决于其他技能的技能。 用mongo模拟这个会更好吗?