草庐IT

mongoid6

全部标签

ruby-on-rails - "Not equal"在带有 Mongoid 的 Rails 中命名范围

我有两个模型Content和ContentType。在内容模型中我可以这样做:defget_all_content_except_poking_messageContent.all.where(:name.ne=>"noforking,justpoking")end现在,我正在尝试对ContentType应用范围。再次在内容模型中:#Associationsbelongs_to:content_typedefget_all_content_except_certain_content_type(content_type)Content.all.where(:content_type.n

ruby-on-rails - 即使使用限制,Rails Mongoid 模型查询结果也会返回错误的大小/长度/计数信息

在我的Rails应用程序中查询某个模型时,它返回正确的结果,摘录size、length或count信息,即使使用limit标准。recipes=Recipe.where(:bitly_url=>/some.url/).order_by(:date=>:asc).skip(10).limit(100)recipes.size#=>57179recipes.count#=>57179recipes.length#=>57179我不明白为什么会这样,它一直显示食谱集合的总数,并且正确的值应该是100,因为我使用了limit。count=0recipes.eachdo|recipe|count

ruby-on-rails - 即使使用限制,Rails Mongoid 模型查询结果也会返回错误的大小/长度/计数信息

在我的Rails应用程序中查询某个模型时,它返回正确的结果,摘录size、length或count信息,即使使用limit标准。recipes=Recipe.where(:bitly_url=>/some.url/).order_by(:date=>:asc).skip(10).limit(100)recipes.size#=>57179recipes.count#=>57179recipes.length#=>57179我不明白为什么会这样,它一直显示食谱集合的总数,并且正确的值应该是100,因为我使用了limit。count=0recipes.eachdo|recipe|count

ruby - 如何在 Mongoid 中为子类设置集合名称?

classFooincludeMongoid::DocumentendclassBarFoo.all返回Bars,Bar.all返回Foos。我想把Foo和Bar放在不同的集合中。我试过了classBar但是得到了Mongoid::Errors::InvalidStorageParent:Problem:Invalidstore_incallonclassBar.Summary:The:store_inmacrocanonlybecalledonabaseMongoidDocument使用Mongoid4.0.2 最佳答案 您还需要

ruby - 如何在 Mongoid 中为子类设置集合名称?

classFooincludeMongoid::DocumentendclassBarFoo.all返回Bars,Bar.all返回Foos。我想把Foo和Bar放在不同的集合中。我试过了classBar但是得到了Mongoid::Errors::InvalidStorageParent:Problem:Invalidstore_incallonclassBar.Summary:The:store_inmacrocanonlybecalledonabaseMongoidDocument使用Mongoid4.0.2 最佳答案 您还需要

ruby-on-rails - 如何在 Mongoid 中更改文档的 _type?

我在Rails应用程序中有以下模型:classUserincludeMongoid::Document...endclassAdmin我得到一个用户:u=User.find(some_key)并尝试更改_type:u._type#=>"User"u._type="Admin"u.saveu._type#=>"Admin"但如果我重新加载对象,它仍然是用户:u.reloadu._type="User"正确的方法是什么? 最佳答案 您也可以使用Model#update_attribute留在mongoid:user.update_att

ruby-on-rails - 如何在 Mongoid 中更改文档的 _type?

我在Rails应用程序中有以下模型:classUserincludeMongoid::Document...endclassAdmin我得到一个用户:u=User.find(some_key)并尝试更改_type:u._type#=>"User"u._type="Admin"u.saveu._type#=>"Admin"但如果我重新加载对象,它仍然是用户:u.reloadu._type="User"正确的方法是什么? 最佳答案 您也可以使用Model#update_attribute留在mongoid:user.update_att

ruby-on-rails - Mongoid 和 Rails 的字段别名

MongoDB中的常见做法是使用短键名来节省空间。例如,有人可能想要使用“fn”而不是“first_name”但是,在您的应用中,如果您到处都使用“fn”,那您就完蛋了。太丑了特别是对于Rails,在Mongoid中声明字段时是否有一种简单的方法来指定别名?另外,有人知道任何使用Mongoid的开源示例项目吗?谢谢! 最佳答案 你应该考虑使用field:fn,:as=>:firstname如此处所述:http://groups.google.com/group/mongoid/browse_thread/thread/ce3298d

ruby-on-rails - Mongoid 和 Rails 的字段别名

MongoDB中的常见做法是使用短键名来节省空间。例如,有人可能想要使用“fn”而不是“first_name”但是,在您的应用中,如果您到处都使用“fn”,那您就完蛋了。太丑了特别是对于Rails,在Mongoid中声明字段时是否有一种简单的方法来指定别名?另外,有人知道任何使用Mongoid的开源示例项目吗?谢谢! 最佳答案 你应该考虑使用field:fn,:as=>:firstname如此处所述:http://groups.google.com/group/mongoid/browse_thread/thread/ce3298d

ruby-on-rails - Mongoid - 阵列管理?插入唯一值,如果存在则删除值?

我正在尝试做一些我认为相当简单的事情:1)仅当该值不存在时才在数组字段中插入该值2)删除数组中存在的值我只是不知道如何做这些事情......目前我只是插入我的值而不检查它是否已经存在:myArray谢谢,亚历克斯ps:使用Rails3.0.3、mongo1.1.5和mongoid2.0.0.rc5ps2:这是实现我想要的mongodb语法,但我不知道如何在mongoid中做到这一点{$addToSet:{field:value}}仅当它不在数组中时才向数组添加值,如果field是现有数组,否则如果field不存在,则将field设置为数组值。如果字段存在但不是数组,则会引发错误条件。添