草庐IT

mongodb - Mongoid 没有服务器可用匹配首选项

当我尝试对数据库执行查询时,我有一堆正在运行的sidekiq作业失败并出现以下错误:Noserverisavailablematchingpreference:#这似乎是随机发生的,而不是一直发生。我的mongoid.yml结构如下:hosts:-XX.XXX.XXX.X:27000-XX.XXX.XXX.XXX:27000database:acbde__productionoptions:connect_timeout:20read:mode::secondarymax_pool_size:800replica_set:acbdeReplset以前有人遇到过这个问题吗?

ruby-on-rails - Mongoid 中的日期查询

这已经被问了很多,但我仍然面临一些问题。我有收到的日期并存储为日期。我需要查询大于和小于,所以我将其更改为时间,再次尝试,但我得到了奇怪的结果。我正在做这个Class.where(:event_date.gt=>Time.parse(Date.today))我正在获取旧唱片,1940年代、1960年代等。我尝试通过在末尾添加.utc来转换时间,仅与Date.today进行比较,但到目前为止还没有解决问题。这是Mongoid生成的选择器selector:{:date_utc=>{"$gte"=>SatSep1021:00:00UTC2011}},我收到格式为“2011-09-11”的日期

ruby-on-rails - Mongoid 中的日期查询

这已经被问了很多,但我仍然面临一些问题。我有收到的日期并存储为日期。我需要查询大于和小于,所以我将其更改为时间,再次尝试,但我得到了奇怪的结果。我正在做这个Class.where(:event_date.gt=>Time.parse(Date.today))我正在获取旧唱片,1940年代、1960年代等。我尝试通过在末尾添加.utc来转换时间,仅与Date.today进行比较,但到目前为止还没有解决问题。这是Mongoid生成的选择器selector:{:date_utc=>{"$gte"=>SatSep1021:00:00UTC2011}},我收到格式为“2011-09-11”的日期

ruby-on-rails-3 - 如何从 Mongoid 直接访问 MongoDB API?

我想使用addToSetMongoDB的方法,但Mongoid目前还不支持。有没有办法从我的Rails模型中直接访问MongoDB驱动程序? 最佳答案 我问了这个问题onMongoidgroup这是最好的回应:AssumingyourmodelobjectisaMongoid::Document,simplycallthe"db"methodonittogetahandletotheMongo::DBobjectthatMongoidisusingunderthehood.http://rdoc.info/github/mongoi

ruby-on-rails-3 - 如何从 Mongoid 直接访问 MongoDB API?

我想使用addToSetMongoDB的方法,但Mongoid目前还不支持。有没有办法从我的Rails模型中直接访问MongoDB驱动程序? 最佳答案 我问了这个问题onMongoidgroup这是最好的回应:AssumingyourmodelobjectisaMongoid::Document,simplycallthe"db"methodonittogetahandletotheMongo::DBobjectthatMongoidisusingunderthehood.http://rdoc.info/github/mongoi

ruby - 如何联合两个不同的 Mongoid Criteria

我的模型中定义了以下范围:scope:upcoming,->{where(:start_time.gt=>Time.now).asc(:start_time)}scope:in_progress,->{now=Time.nowwhere(:start_time.lte=>now).where(:end_time.gte=>now).asc(:start_time)}我想创建另一个范围,它结合了这两个范围的结果,称为current。我尝试过这样的事情:scope:current,->{self.in_progress|self.upcoming}但这只是最终将它们都视为数组并将它们连接起

ruby - 如何联合两个不同的 Mongoid Criteria

我的模型中定义了以下范围:scope:upcoming,->{where(:start_time.gt=>Time.now).asc(:start_time)}scope:in_progress,->{now=Time.nowwhere(:start_time.lte=>now).where(:end_time.gte=>now).asc(:start_time)}我想创建另一个范围,它结合了这两个范围的结果,称为current。我尝试过这样的事情:scope:current,->{self.in_progress|self.upcoming}但这只是最终将它们都视为数组并将它们连接起

ruby - 如何从 Mongoid 的嵌入文档中排除字段?

我有一个包含嵌入标签的Post文档。有时我只显示帖子的标题及其标签。在这些情况下,我在mongoid中使用以下查询:Post.only(:title).find(id)然后我将查询结果以json格式发送给客户端。不幸的是,标签的bsonid使json比我需要的大得多。如何从查询中排除“_id”字段?这是我的模型:classPostincludeMongoid::Documentfield:title,:type=>Stringfield:body,:type=>Stringfield:tags,:type=>Arrayembeds_many:tagsendclassTaginclude

ruby - 如何从 Mongoid 的嵌入文档中排除字段?

我有一个包含嵌入标签的Post文档。有时我只显示帖子的标题及其标签。在这些情况下,我在mongoid中使用以下查询:Post.only(:title).find(id)然后我将查询结果以json格式发送给客户端。不幸的是,标签的bsonid使json比我需要的大得多。如何从查询中排除“_id”字段?这是我的模型:classPostincludeMongoid::Documentfield:title,:type=>Stringfield:body,:type=>Stringfield:tags,:type=>Arrayembeds_many:tagsendclassTaginclude

ruby - 使用 mongoid 动态创建索引

我有一个为我的文档创建新字段的工作,我想在这个工作结束时为这些字段创建索引。我试过了Model.index("field"=>-1)还有Mongoid::Sessions.default[:rating_prediction].ensureIndex没有成功这可能吗? 最佳答案 说Model.index(:field=>-1),或多或少,只是用Model注册索引的存在,它实际上并没有创建索引。您正在寻找create_indexes:-(true)create_indexesSendtheactualindexcreationcomm