问题标签 [mongoid5]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
117 浏览

mongoid5 - 如何从 mongoid 哈希字段中删除一个键

我在 Mongoid 文档中有一个哈希字段,就像< _id: 58a202d407953817ece2989c, d: {"a"=>"b", "c"=>"d"}>我想从中弹出键一样a,以便哈希文件只包含c如何在 mongoid 中执行此操作?

0 投票
1 回答
177 浏览

ruby-on-rails - 关于将 Mongoid Gem 更新到版本 5 问题的警告

我已在 rails 4 应用程序上将 mongoid gem 从 mongoid-4 更新为 5。我在应用重启时面临以下警告

如何更新 Mongoid Yml 以消除警告?

这也是当前的 YML 文件

0 投票
0 回答
602 浏览

ruby-on-rails - 如何在 rails (Mongoid) 中设置 Hash 的数据类型

我有一个类似这样的 mongoDB 方案

在 Rails 和 mongoid 中尝试相同的方法我无法将子元素和数据类型添加到 Hash 对象

这甚至可能吗?

0 投票
1 回答
524 浏览

ruby-on-rails - 带有 CA 证书的 Mongo SSL 配置仅适用于 rails 控制台,不适用于 rails 服务器

我正在尝试配置 Rails 4.2.6 应用程序以通过 SSL 连接到 compose.io 上的 MongoDB 集群。该应用程序使用 mongo 2.4.1 和 mongoid 5.1.5 gems。Compose.io MongoDB 集群使用自签名 SSL 证书,因此我从 compose.io 下载了 CA 证书并将其放在lib/certs/mongo-ca-bundle.pem.

我的 mongoid.yml 文件如下所示(已编辑):

上面的配置在我运行时完美运行rails console,我可以成功地对 compose.io 数据库中的集合运行查询。

但是,当我尝试运行rails server它时,它会在 30 秒后崩溃,并显示“没有可用的服务器”错误消息:

当我为 mongoid 启用调试日志记录时,它表明问题出在 SSL 握手上:

ssl_ca_cert在添加配置之前,我曾经在 rails 控制台中遇到相同的错误。我确实设法通过指定来连接服务器,ssl_verify: false但我不认为这是一个有效的解决方法。我怎样才能解决这个问题?为什么控制台可以工作,而服务器却不能?

0 投票
1 回答
142 浏览

mongodb - 纠正 gem,mongo,测试 ActiveRecord::ConnectionNotEstablished

添加 rectify gem 后,所有测试都失败并出现错误:

我们正在使用:
宝石:

  • 导轨 4.2.8
  • 蒙古五号
  • 纠正 0.9.1
  • 规范 3.4.4

其他:

  • 操作系统:Ubuntu 16.04LTE
  • MongoDB:3.4.3
  • 由 docker-compose 运行的数据库。
  • 码头工人撰写版本 1.12.0

进入开发模式一切正常。
mongoid.yml

堆栈跟踪

看起来测试数据库配置中有一些简单的错误,但我不知道到底是什么。
任何帮助将不胜感激。谢谢!

0 投票
1 回答
213 浏览

mongodb - 嵌套哈希中的 Mongoid 'set' 值

我得到了以下文件

我只想将 c1 原子地修改为 8

我愿意document.set('a.b.c1': 8),但 'b' 的整个值变为{c1:8}.

这是我的课

这是为什么?

0 投票
0 回答
112 浏览

ruby-on-rails - 动态连接mongoid的正确方法是什么?

我正在使用 mongoid orm 并尝试动态建立连接。

建立连接后,我正在执行业务逻辑并最终保存记录(通过 MongoID 模型对象)。

整个处理和保存对象大约需要 10-12 秒。

问题是有时记录保存在与预期不同的 mongo 服务器中。

我正在运行 2 个 puma 服务器实例。

在本地一切正常,但在服务器上行为不端。

如果我做错了什么以及是否有更正确的方法,请告诉我。

提前致谢 :)

0 投票
1 回答
106 浏览

ruby-on-rails - Rails/Mongoid 与 Struct 的关系问题

我正在构建这个库应用程序,它有 3 个类。州、图书馆和书籍。该州有许多图书馆,图书馆属于一个州。图书馆有很多书,书被嵌入图书馆。但是,当我做这个 auto_pick_job 并且我们到达top_free_book并调用library.state. library.state 出于某种原因为零。我希望恢复状态,但没有骰子。我调用和创建库的方式如下。所以图书馆将永远属于一个现有的国家。

我也将感谢使用 Struct 的关系帮助。

0 投票
0 回答
7 浏览

ruby-on-rails - 如何形成 Rails Mongo Id 包含查询?

我在用

  • MongoId 5.4

  • 导轨 4.2

想要执行连接操作并根据条件检索结果。

乐队表

乐队历史

我想在乐队历史上添加搜索,其中乐队名称为“明星乐队”

普通查询可以像

尝试使用包含使其更通用

上面的 include 和 where 子句没有返回任何结果

谁能帮助我做错了什么

0 投票
0 回答
10 浏览

ruby-on-rails - Puma-dev 和 Rails 都运行相同版本的 puma 但产生不同的结果

试图调试一个令人困惑的问题。从 Rails 3.22.xx -> 4.2.11.3 升级旧应用程序。

如果我运行rails s服务器启动并且应用程序加载就好了。

但是,如果我使用为 puma-dev 设置的域,则会出错。该错误与 mongo gem 和 BSON 序列化有关。

下面的代码value只是我从 mongo gem 中注销的内容。

该错误具体发生在它获取用户 ID 值并返回时

我很困惑为什么在通过 puma dev 加载时会发生这种情况,但在使用 Rails 并转到 localhost:3000 时不会发生这种情况。

Ruby on rails 4.2.11.3、Mongo 2.7.0、MongoID 5.4.1。