草庐IT

mongoid4

全部标签

ruby-on-rails - Mongoid 不在查询中

我在使用mongoid时遇到了一些问题:test"Testcandidate"doUser.create(:id=>1,:sex=>User::Male,:country=>1,:city=>1)User.create(:id=>2,:sex=>User::Female,:country=>1,:city=>1)User.create(:id=>3,:sex=>User::Female,:country=>1,:city=>1)user=User.not_in(:id=>[2]).secondassert_not_equal(user.id,2)end测试失败。我尝试使用where(:

ruby-on-rails - 如何在 Rails 3 中并行使用 Mongoid 和 ActiveRecord?

我正在使用rails3,并使用ActiveRecord开始我的应用程序。现在,我有很多模型,并且关系开始变得复杂,有些可以用面向文档的结构更简单地表达,所以我想尝试迁移到MongoDB并使用Mongoid。我一直听说您不必使用全部MongoDB或什么都不使用,但您可以在迁移时并行使用这两者。不过,我看不到如何从文档中解决这个问题。例如,我有:classUser:itemsendclassProduct理想情况下,我希望先将我的Itemactiverecord模型替换为Mongoid文档,因此我的项目存储在MongoDB中,并且我的Users和Products可以保留在我的SQL数据库中

ruby-on-rails - 如何在 Rails 3 中并行使用 Mongoid 和 ActiveRecord?

我正在使用rails3,并使用ActiveRecord开始我的应用程序。现在,我有很多模型,并且关系开始变得复杂,有些可以用面向文档的结构更简单地表达,所以我想尝试迁移到MongoDB并使用Mongoid。我一直听说您不必使用全部MongoDB或什么都不使用,但您可以在迁移时并行使用这两者。不过,我看不到如何从文档中解决这个问题。例如,我有:classUser:itemsendclassProduct理想情况下,我希望先将我的Itemactiverecord模型替换为Mongoid文档,因此我的项目存储在MongoDB中,并且我的Users和Products可以保留在我的SQL数据库中

ruby-on-rails - 查询 Mongoid 哈希字段

我想查询Mongoid类的哈希字段。我不确定如何在有条件的情况下做到这一点?这是一个例子:classPersonincludeMongoid::Documentfield:things,:type=>Hashend所以,假设我有这个:p=Person.newp.things={}p.things[:tv]="Samsung"我想查询第一个拥有三星电视的人...People.first(:conditions=>?????提前致谢。 最佳答案 Person.where('things.tv'=>'Samsung').first这是Mo

ruby-on-rails - Mongoid/Mongodb 和查询嵌入文档

我有Author和Book模型。一个Author有很多嵌入的Books。我可以查询嵌入的Books,还是必须先获取Authors才能获取Books? 最佳答案 您可以查询嵌入的文档,只需限定名称即可。现在,这将返回所有拥有与您的查询匹配的书籍的作者。如果作者被定义为有很多:books(并且book是一个嵌入的::document)@authors_with_sewid=Author.where("books.name"=>"sewid").all然后您需要遍历作者并提取书籍。 关于rub

ruby-on-rails - Mongoid 查找器不起作用?

我已经设置了一个rails3+mongoid应用程序,当我打开rails控制台时,似乎没有一个查找器工作-http://d.pr/FNzCUser.allUser.find(:all,:conditions=>{first_name=>"John"})都返回:#我做错了吗? 最佳答案 好的,这就是让mongoid对新手感到恼火的部分原因。人们期望像User.all这样的方法实际上只返回Criteria对象时返回一个数组。为了提供链式方法和其他花哨的查询机制的语法糖,Mongoid似乎使用了延迟加载类型的东西。你可以这样做:#arra

ruby-on-rails - mongoid 中 embeds_many 和 has_many 的区别

谁能给我解释一下embeds_many和has_many在mongoid中的区别? 最佳答案 embeds_many用于在父文档中存储相关文档。has_many用于将文档之间的关系存储在单独的集合中。has_many的相关记录有存储父文档id的字段。 关于ruby-on-rails-mongoid中embeds_many和has_many的区别,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/ques

ruby-on-rails - 批量查找 mongoDB 记录(使用 mongoid ruby​​ 适配器)

使用带有mongoid适配器的rails3和mongoDB,我如何批量查找到mongoDB?我需要获取特定mongoDB集合中的所有记录并在solr(用于搜索的数据的初始索引)中对其进行索引。我遇到的问题是Model.all会抓取所有记录并将它们存储到内存中。然后,当我处理它们并在solr中建立索引时,我的内存被吃光了,进程终止了。我要做的是在mongo中批量查找,这样我就可以一次迭代1000多条记录,将它们传递给solr以进行索引,然后处理接下来的1000条,等等......我目前拥有的代码是这样做的:Model.all.eachdo|r|Sunspot.index(r)end对于包

mongodb - 使用 Mongoid 批量插入/更新?

我用谷歌搜索了所有其他人,但没有找到答案。问题是:您好,如何使用Mongoid批量插入MongoDB? 最佳答案 您可以使用ruby​​mongo驱动程序的insert方法插入一批哈希数组。在任何Mongoid类中,您都可以调用collection来访问它。batch=[{:name=>"mongodb"},{:name=>"mongoid"}]Article.collection.insert(batch) 关于mongodb-使用Mongoid批量插入/更新?,我们在StackOve

ruby-on-rails - 如何实现has_many :through relationships with Mongoid and mongodb?

使用theRailsguides中的这个修改示例,如何使用mongoid对关系“has_many:through”关联进行建模?挑战在于mongoid不像ActiveRecord那样支持has_many:through。#doctorcheckingoutpatientclassPhysician:appointmentshas_many:meeting_notes,:through=>:appointmentsend#notestakenduringtheappointmentclassMeetingNote:appointmentshas_many:physicians,:thro