草庐IT

mongoid3

全部标签

ruby-on-rails - Authlogic 如何与 Mongoid 一起使用?

Authlogic需要许多ActiveRecord功能,这些功能在ActiveModel中不可用,因此在Mongoid中也不可用。Authlogic如何与Mongoid一起使用? 最佳答案 Authlogic可以通过猴子修补Authlogic与Mongoid一起使用。YMMV.首先,将Authlogic和Mongoid添加到Gemfile。gem'mongoid',github:'mongoid/mongoid'#CurrentlyrequiredforRails4gem'authlogic','~>3.3.0'下一个猴子补丁Aut

ruby-on-rails - Mongoid 将一个类嵌入为多个字段

我正在尝试跟踪用户的当前、之前和选择的(期末更改)订阅状态。在每月周期结束时,如果chosen_subscription!=current_subscription,current_subscription会发生变化。classUserincludeMongoid::Documentembeds_one:previous_subscription,class_name:"Subscription"embeds_one:current_subscription,class_name:"Subscription"embeds_one:chosen_subscription,class_na

ruby-on-rails - Mongoid 动态更改主机

Mongoid提供了几个选项来更改正在使用的mongodb数据库,方法是指定新数据库或将session名称更改为已在mongoid.yml文件中定义的名称。我想知道是否有办法在运行应用程序时更改session(即mongodb主机)。因此,例如,如果我启动我的应用程序并且它最初在服务器1上的主数据库上运行,有没有办法说使用服务器上的示例数据库2 最佳答案 下面允许用户动态添加sessionsession_hash={"database"=>"testmongo","hosts"=>["127.0.0.1:3003"],"userna

ruby-on-rails - rails 4.0 通过 mongoid 处理空的 mongodb 结果查询

我正在尝试使用mongoid和mongodb而不是普通数据库来完成MichaelHartl的rails4教程。我已经到了必须设置用户登录和注销的位置,这就是我遇到的问题。下面是我用来检查用户的电子邮件是否已注册的代码。user=User.find_by(email:params[:session][:email].downcase)ifuser&&user.authenticate(params[:session][:password])#signinandloaduserpageelseflash[:error]='Invalidemail/passwordcombination'r

ruby-on-rails - Mongoid 在父级内部创建嵌入式文档

我有两个模型用户和状态。状态嵌入在用户中:用户.rbclassUserincludeMongoid::DocumentincludeMongoid::Timestampsembeds_one:status,as::statusable状态.rbclassStatusincludeMongoid::DocumentincludeMongoid::Timestampsembedded_in:statusable,polymorphic:true现在我正在尝试创建状态文档内部用户:*User.create!(:name=>'try',:status=>{:num=>'111'})=>Name

ruby - 在没有 .load() 的情况下初始化 Mongoid

我的Sinatra应用程序中有以下行:Mongoid.load!('./config/database/mongoid.yml')这很好,但我不想将我的连接详细信息保存在YAML文件中,并将其添加到.gitignore.我想将它们保留在ENV中.我过去可以通过添加像username:这样的东西来绕过这个问题到YAML配置文件,然后将其作为ERB读取,保存并使用Mongoid.load!再次读取它在Heroku删除磁盘之前。不用说,这非常疯狂。我能找到的就是.load!的定义overhere而且看起来没有任何解决办法。是否有一些隐藏的方式以编程方式配置Mongoid连接?提前致谢。

mongodb - 我应该将 Mongoid 嵌入多深?

您好,我是mongoDB和Mongoid的新手,对何时使用嵌入式文档以及嵌入的深度有点困惑。所以一个虚构的例子:图书馆收藏has_many:books,其中embeds_many:pages,其中embeds_many:sections因为我不能直接说一个部分,所以我必须通过books.pages.sections,对吗?这将导致这条路线,libraries/:id/books/:id/pages/:id/sections/:id这看起来有点疯狂,最好的做法是只嵌套一层深,对吧?一种方法是使用路由pages/:id/sections/:id然后将bookid粘贴到请求中?查询部分会不会

ruby - Mongoid:对单个字段进行多次检查

我需要选择与给定交易类型相同的交易。我需要检查它是否不会返回所有类型为nil的交易。使用ActiveRecord我可以轻松地写:given_transaction=Transaction.firstneeded_transactions=Transaction.where('type!=nilandtype=?',given_transaction.type)所有作品当我尝试用mongoid写同样的东西时:needed_transactions=Transaction.where(:type=>given_transaction.type,:type.ne=>nil)它生成以下查询:"

ruby-on-rails-3 - 或者查询匹配 nil 或 ""与 Mongoid 仍然匹配 ""?

我正在尝试为嵌入式Mongoid::Document编写一个查询,它可以找到“地址”字段既不是nil也不是“”的任何记录。结合使用MongoDB文档,thisissueintheMongoidbugreports和Mongoid文档,我认为这样的事情应该可行:scope:with_address,where("$or"=>[{:address=>{"$ne"=>nil}},{:address=>{"$ne"=>""}}])当我运行它时,选择器看起来没问题:1.9.2p290:002>report.document.records.with_address=>#[{:address=>{

ruby-on-rails - 更改 mongoid embeds_many 关联名称

使用Rails3.2和Mongoid2.4。我有一个遗留模型Organization,它嵌入了很多organization_members。它看起来像这样:classOrganizationincludeMongoid::Documentembeds_many:organization_membersendclassOrganizationMembersincludeMongoid::Documentembedded_in:organizationend我想做的是将我用来访问成员的方法从organization.organization_members更改为仅organization.