{:_id => self.class.name}, :up-6ren">
gpt4 book ai didi

Mongoid 3.0.0 未定义方法 `master' 用于 Mongoid :Module

转载 作者:行者123 更新时间:2023-12-04 05:47:41 25 4
gpt4 key购买 nike

 Mongoid.master.collection("seq").find_and_modify({
:query => {:_id => self.class.name},
:update => {'$inc' => {:next => 1}},
:new => true,
:upsert => true
})["next"]

它在 mongoid 2.4.9 中运行良好,但是当我使用 mongoid 3.0.0 时,出现错误
NoMethodError in PostsController#new

undefined method `master' for Mongoid:Module

Mongoid 3.0.0 不支持 Mongoid.master 吗?

最佳答案

因为 Mongoid 3.0.0 使用 Moped 代替 Mongo Ruby Driver,所以旧的 API 不能调用 not。

你可以试试这个:

Mongoid::Sessions.default.command({:findAndModify => "seq",
:query => { :_id => self.class.name },
:update => { "$inc" => { :next => 1 } },
:upsert => true,
:new => true })

你可以使用这个 Gem 来做自动增加 id 功能:
https://github.com/huacnlee/mongoid_auto_increment_id

关于Mongoid 3.0.0 未定义方法 `master' 用于 Mongoid :Module,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10469521/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com