问题标签 [mongoid3]

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 回答
468 浏览

ruby-on-rails - Mongoid Query DB by Virtual Attribute

BACKGROUND: I have Posts and Users, both of which HABTM Communities. In my Post model, I have a method for calculating a post's relevance to a given user by comparing how many communities they have in common as such:

OBJECTIVE: To query Posts either by a given relevance i.e.

or

to query all posts and sort them by relevance i.e.

I know that the user variable is needed there somewhere, just wondering if something like this is possible or if a workaround exists.

0 投票
0 回答
228 浏览

devise - Mongoid3 + FactoryGirl 不兼容?

我刚刚升级到 Mongoid3,我得到了很多这些错误:

问题总是当我尝试构建一个属于另一个模型的模型并分配引用模型时:

它似乎是“user_id:@user.id”部分。我试过了:

每次都是同样的错误。

这是工厂文件:

我正在使用设计,这是我们运行的控制器宏:

这是完整的堆栈跟踪:

0 投票
1 回答
353 浏览

ruby-on-rails - 强制命名空间模型表单使用根类名

我正在使用命名空间模型将不同类型的服务分配给平台:

关系:Platform has_many :services&Service belongs_to :platform

继承 : Service::Service1 < Service, Service::Service2 < Service, 等等

每种服务类型都有一组不同的字段(我使用的是 Mongoid,因此字段被声明到模型中,“子模型”类型存储在_type字段中)。

ServicesController::new,我实例化这样的新服务:

params[:type]由路由参数给出(类似于/:platform_id/services/new/:type

在我form看来,我现在可以根据服务类型显示字段(它是 Haml + simple_form):

到目前为止一切正常:生成的 HTML 输入如下所示:

使用service_service1[field1]作为字段名称,我的参数哈希将根据子服务包含不同的键,并且在我的控制器的create操作中,我必须为每个子服务编写一个案例/何时,而service[field1]我的代码会“干燥”(我只需要添加一个带有确切模型的隐藏字段来实例化)。

在使用命名空间模型时,有没有办法强制 Rails 使用根类作为字段名?

编辑:提交按钮 i18n 的相同问题:Rails 查找helpers.submit.service_service1.create我希望它查找的位置,helpers.submit.service.create因为所有服务的文本都是相同的。

0 投票
1 回答
2452 浏览

ruby-on-rails - 带有 AND 和 OR 的 Mongoid 3 复杂查询

我有一个 Rails 3.2 博客应用程序,它根据用户的公司和地区向用户显示帖子。我还想显示用户是帖子作者的帖子,即使它是为另一个公司或地区创建的(帖子对象有一个地区和一个公司,以及用户对象)。

我在 MySQL 中使用查询做了类似的事情:

我们现在正在使用 Mongoid gem 将应用程序迁移到 MongoDB,这是我无法弄清楚的最后一个查询。这是我到目前为止使用 Origin 和 Selector 的组合来调用文档的内容:

但是,这只会拉取 company_id 和 region_id 为空或与用户属性匹配的帖子。

0 投票
1 回答
275 浏览

ruby - Mongoid::Criteria#last 修改条件并给出错误结果

这是我使用 mongoid (3.0.0) 发现的一个有趣的模式,我怀疑这是一个错误。

到现在为止还挺好!但是,如果我发出以下命令 - 我会得到奇怪的结果。

这向我显示了所有产品数量而不是 5(因为我有:limit => 5)

现在更奇怪的部分:

这应该是_id:500fa5614f6d3a23d0000006。现在,如果我再次尝试映射 id,我会得到:

这完全改变了标准!但是,我得到了正确的结果:

不过,这似乎与 Mongoid 3.0.0 有关。有任何想法吗?

0 投票
1 回答
630 浏览

ruby-on-rails-3 - 如何?:Mongoid 3 和 Dragonfly 配置

我正在尝试将我的应用程序升级到 mongoid 版本 3。在我的蜻蜓初始化程序中,我曾经有这个:

Mongoid.database 不再存在。现在为蜻蜓配置连接的最佳方法是什么?

0 投票
1 回答
98 浏览

ruby-on-rails - 奇怪的幽灵物体出现

我目前有 3 个模型,UserModel (Devise),一个 ArticleModel 和一个 CommentModel。

我和mongoid一起工作。

我的文章/show.html.haml

我的comments_controller

现在在我的文章/节目中出现了一个带有 id 但完全为空的评论,我只是无法弄清楚这个对象来自哪里......

0 投票
1 回答
453 浏览

mongodb - 嵌入文档上的 Mongoid 相交标准

我正在尝试使用 Mongoid 3 在一些嵌入式文档上获取两个查询的交集。

所以(假例子)想象我有:

如果我想从用户那里获得带有评论的帖子,我可以这样做

但是,如果我想获得这两个用户都发表评论的帖子怎么办:

这在 mongoid 3 中不起作用。它用第二个comments.author_id 覆盖第一个comments.author_id,所以你会得到这样的结果:

我尝试过的其他变体没有任何运气:

有没有更好的方法来构造这个查询?谢谢!

0 投票
1 回答
264 浏览

javascript - 如何将 id 添加到隐藏字段并将其与其他数据一起发送到控制器,以便它们与父模型关联?

我有一篇有很多图片的帖子。在一个视图中,我有两个表单,一个带有标准的 post 字段,另一个用于将图片异步发送到pictures_controller,我的 JavaScript 仅接收带有新添加图片的 ID 的回调,尚未与父级关联。如何将 JavaScript 接收到的许多 ID 添加到 post 表单中的隐藏字段,并在 post_controller 循环中发送隐藏字段中的 ID 并将其与 post 模型相关联?我正在尝试执行第 3 步(有趣的部分):如何在创建帖子期间使用 JQuery-File-Upload 在一个页面上上传多个图像?.

帖子视图:

JavaScript(我不知道如何正确地将新收到的 id 添加到隐藏字段,开始时它只包含:)[]

post_controller:

邮政:

Mongoid 抛出错误:undefined method 'compact' for #<Picture:0x007faf2513d810>

0 投票
1 回答
94 浏览

mongoid - rails 和 Mongoid,创建资格系统(将资格嵌入到两个模型中)

我正在开发一个小应用程序来显示一些图片。每张图片都可以按 1 到 5 的等级“投票”或“合格”。

只能对已登录的用户进行一次资格认证。

我需要知道每个图像的资格,以及用户设置投票的图像(并知道该投票的价值),所以我创建了这个模型:

但我不知道这是否正确。¿ 我可以将相同的模型(在本例中为 Voto)存储在两个不同的文档(图片和用户)中吗?

知道如何实现这一目标吗?