问题标签 [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.
ruby-on-rails - Mongoid 5:使用 returnNewDocument 的 find_one_and_update
是否有可能,Mongoid,v5.1.2returnNewDocument
在与 一起使用时会忽略该选项find_one_and_update
?
考虑以下代码:
该类auto_increment_counter
的整数在哪里。field :auto_increment_counter, type: Integer, default: 0
但是,当没有找到文档时,它会创建一个,但不会返回新创建的文档。所以我nil
回来了find_one_and_update
,它坏了。
ruby - 仅重新加载一个属性 mongoid
我有model
对象实现Mongoid::Document
model
有一个属性叫做name
name
我只需要重新加载model
有没有比
Model.only(:name).find(model.id).name
喜欢model.reload(:name)
ruby-on-rails - 具有嵌入文档的文档的 Mongoid Rails 更新错误
我有一个名为 User 的模型。用户 embeds_many 帖子。
对于具有嵌入帖子的用户记录,每当我尝试更新任何其他字段时,我都会收到错误消息
我正在使用更新如下
如果我embeds_many :posts
从用户模型文件中删除,上述更新查询工作正常。
mongoid - 不推荐使用 Mongoid find_and_modify
我目前正在将 Rails 应用程序更新到 Mongoid 5。我在更新一些使用过时方法 (find_and_modify) 的代码时遇到问题。任何帮助,将不胜感激。
在 Mongoid 4 中,我有这种方法来查找和更新:
使用 Mongoid 5 的等价物是什么?
谢谢。
ruby-on-rails - 我的 Rails 4.2.6 应用程序使用两个数据库。我可以只使用一个用于测试目的吗?
我在 Rails 4.2.6 中有一个 Web 应用程序,它最初使用 MongoDB(通过 Mongoid 5)作为其主数据库。但是,现在我需要连接到 MySQL 数据库才能仅为我的应用程序读取一些额外的数据。
到目前为止,我的项目中已经需要 ActiveRecord,并且能够在开发环境中与上述数据库建立连接。我的配置文件是:
mongoid.yml
数据库.yml
当我运行我的测试套件时,问题就来了。我正在使用 RSpec 并执行bundle exec rspec spec
会产生以下错误消息:
ActiveRecord 抱怨没有要连接的测试数据库,但问题是我没有用于测试目的的 MySQL 数据库:我编写的规范仅与 Mongoid 模型交互。
我正在考虑创建一个空的 MySQL 数据库作为 hack,但我想首先知道是否可以将 ActiveRecord 配置为不连接到测试数据库并仅使用mongo_test
.
有可能做我想做的事吗?有人知道怎么做这个吗?
ruby-on-rails - mongoid embeds_many 关联集合保持为空
我有两个模型
当我以嵌套形式保存图像时,它会保存在供应商集合中,即
但问题是图像收集本身仍然是空的,即
mongodb - 如何在 mongoid 5 中创建文本索引?
我的模型中有这个
index({company_name: 1, first_name: 1, last_name: 1 })
Model.text_search 'something'
给出这个错误
Mongo::Error::OperationFailure: text index required for $text query
ruby-on-rails - Rails 按即将到来的日期排序,然后降序
我有一个约会集合,其中有一个start_date
DateTime 字段。
我需要对这些约会进行排序,所以我有
- 即将到来的约会首先
- 然后是“过去”的约会,最近的在前
即假设我有
我使用相对时间来举例说明,请记住我必须与 Time.now 进行比较的代码
我想要那种返回
我正在使用 Mongoid,但由于数组中的项目很少,我会接受使用数组方法而不是标准的解决方案(尽管具有 mongoid 标准的解决方案会更好)
ruby-on-rails - 从大型列表 Ruby 中查找名称变体
我有一个很大的单词列表,可能有 300-600 个单词,我希望这样当我的用户开始输入一个单词时,应用程序会建议它从我的特定列表中找到的单词,这些单词接近那个人给出的拼写。有点像自动完成,但单词列表是动态的并且特定于该用户。关于如何实现这一点的任何宝石或技术建议?
ruby-on-rails - Rails 4 应用程序中的关联错误与 mongoid + simple_form + devise
如标题所述,我制作了一个 Rails 4 应用程序,其中包含
- mongoid (5.1.3)
- 设计(4.2.0)
- simple_form (3.2.1)
我使用以下命令设置我的应用程序:
我在模型文件中添加以下代码user.rb
以在两个模型之间建立关联:
当我运行应用程序并在其上创建用户时,我访问http://localhost:3000/posts/new创建一个新帖子,我收到以下错误:
我在搜索引擎和此处搜索了它,但与此问题无关。我该如何解决?
临时解决方案:
替换embeds_many
和embedded_in
关联模型文件中的应用程序has_many
并使belongs_to
应用程序工作。通过这种替换,可以访问Post
s 属于User
或User
s Post
。我想知道是否可以在第一种情况下使用embeds_many
and进行关联embedded_in
。