草庐IT

mongoid3

全部标签

mongodb - 如何使用 Doctrine ODM for MongoDB 设置我自己的 MongoId?

useDoctrine\ODM\MongoDB\Mapping\AnnotationsasODM;/***@ODM\Document()*/classMy_Doctrine_Model{/**@ODM\id*/protected$id;publicfunctiongetId(){return$this->id;}publicfunctionsetId($value){$this->id=$value;return$this;}}代码$myModel=newMy_Doctrine_Model();$myModel->setId(newMongoId());//Idismysetid$dm

mongodb - Mongoid attr_accessible 不工作

今天早上我醒来时遇到了一个奇怪的问题,mongoid正在为模型中未定义的属性创建记录为了克服这个问题,我决定实现attr_accessible也在Mongoid中提到specification"Providingalistoffieldsasaccessibleissimplytheinverseofprotectingthem.Anythingnotdefinedasaccessiblewillcausetheerror."--MongoidSpecification认为一切都会正常工作我创建了一个虚拟记录而且我也很惊讶我被插入以反对上面的声明"Anythingnotdefineda

ruby - Mongodb 简单更新在 Ruby/Mongoid 中不起作用

我有以下MongoDB更新操作,但它似乎不起作用,有人知道为什么吗?User.collection.update({_id:BSON::ObjectId("5018ed448712ff240e0000a0")},{"$set"=>{name:"ben"}})它不会抛出错误,而只是一些我猜测是文档大小的整数。我正在使用Mongoid2.4.10/Rails3.2.7 最佳答案 如果您使用的是Mongoid,您只需进行查找和更新即可:User.find("5018ed448712ff240e0000a0").update_attribu

ruby-on-rails - 在 Mongoid 中,我如何创建一个数组或引用数量

我有一个classItemincludeMongoid::Documentfieldname,type:Stringend和一个classPackincludeMongoid::Documentend每个包可以包含不同数量的不同元素。我本来想做的classPackincludeMongoid::Documentfielditems,type:Arrayend一开始,我试过a=Pack.newa.items=[]a.items我得到了:NoMethodError:undefinedmethod`__bson_dump__'for#然后我尝试了:a=Pack.newa.items=[]a.

ruby-on-rails - 在 Mongoid 中链接 map_reduce 调用的正确方法是什么?

我有一个属于用户的元素模型。我正在尝试计算以下哈希:有多少用户的元素计数为1、2、3等。我采用的方法是首先生成{user->numelements}的哈希,然后我将其反转使用第二个map-reduce。这是我目前所拥有的:Element.map_reduce(%Q{emit(this.user_id,1);},%Q{function(key,values){returnArray.sum(values);}}).out(inline:true).map_reduce(%Q{if(this.value>1){emit(this.value,this._id);}},%Q{function

mongodb - 在 MongoDB 中检索数组中项目的索引

类似于-Aggregation:addoptionto$unwindtoemitarrayindex-Getindexofanitemwithinmongodbquery我有这个用例。最美味的水果排行榜:{"date":"Jan1st","fruit_ranking":["Apple","Orange","Grape","Kiwi","Mango","Pear"]},{"date":"Jan2nd","fruit_ranking":["Orange","Grape","Kiwi","Pear","Apple"]}.....{"date":"Dec31st","fruit_ranking

mongodb - Mongoid with Rails 4 - 无法连接到主节点... resolved_address=nil

我在本地安装了MongoDB,但在尝试在Rails4/Ruby1.9.3/Windows7上使用Mongoid/Moped时遇到此错误:"Couldnotconnecttoaprimarynodeforreplicaset#]>"可能是由resolved_address=nil引起的-其他论坛表示这是主机文件中的拼写错误-知道这个文件在Windows上的位置吗?应用仅包含一个简单的模型“文章”classArticleincludeMongoid::Documentfield:name,type:Stringfield:content,type:Stringend异常在Articles.

ruby-on-rails - 使 mongoid session 只读

我的mongoid.yml中有不同的session,其中一个session提供来自静态mongo数据库的数据。我想知道是否有可能以只读模式“加载”一个session,以便save、create、destroy不会发生任何变化或destroy_all都可以。我的mongoid.yml看起来像这样:production:sessions:default:database:my_app_productionhosts:-localhost:27017options:read:primarystatic_content:database:static_content_dbhosts:-loca

ruby-on-rails - mongoid 最后一次调用时返回第一个文档的错误?

遇到mongoid的bug,调用last方法时返回第一个文档classPostincludeMongoid::DocumentendPost.createPost.createPost.first==Post.last#=>true版本信息:mongoid:"5.0.2"mongodb:v3.2.1rails4.2.5 最佳答案 这不是Mongoid中的错误,而是您对first和last方法的期望中的错误。来自fineversion5manual:#first⇒DocumentNote:Mongoidpreviouslyaddeda

ruby-on-rails - 我如何在 Rail 2.3.5 中生成 mongoid.yml 配置?

如标题所述,如何在Rail2.3.5上生成默认的mongoid.yml配置文件?我尝试使用“railsgeneratemongoid:config”命令,但它只会生成一个新应用。而且,我想在mongoid中使用has_many而不在同一字段中嵌入关联模型。我希望它们位于不同的字段中并通过*_id“列”关联。这可能吗? 最佳答案 你不能。MongoID的master分支只兼容Rails3。如果你想在Rails2.3.5中使用mongoID,你需要使用MongoID的1.0.x分支。在这个版本中,没有mongoid生成器。你需要定义你自