标签: mongoid

使用Mongodb存储一个非常大的"黑名单"ID列表

我需要在mongo中将无序的ID列表存储为"黑名单",并将它们纯粹用于检查原因.

blacklisted_ids= [1,23......100002942234... some very large number]
Run Code Online (Sandbox Code Playgroud)

但是将其存储在单个文档中是不可行的,因为我将非常快地完成2Mb的限制.

我可以在mongodb中创建一个集合,并将每个id作为文档插入,但它似乎有点矫枉过正,因为我想要的只是检查是否存在.

这样做的正确方法是什么?

注意:我使用的是mongoid/rails.=)

ruby mongodb mongoid

2
推荐指数
1
解决办法
1129
查看次数

类别:类Mongoid Nginx乘客的未定义方法`mount_uploader'

我在我的应用程序中使用了carrierwave.问题是它在开发模式下运行良好.但是当与乘客一起部署到nginx时会抛出以下错误:

/home/webserver/raw/releases/20110919033346/app/models/category.rb:11: undefined method `mount_uploader' for Category:Class (NoMethodError)
from /opt/ruby/lib/ruby/gems/1.8/gems/activesupport-3.0.9/lib/active_support/dependencies.rb:454:in `load'
from /opt/ruby/lib/ruby/gems/1.8/gems/activesupport-3.0.9/lib/active_support/dependencies.rb:454:in `load_file'
from /opt/ruby/lib/ruby/gems/1.8/gems/activesupport-3.0.9/lib/active_support/dependencies.rb:596:in `new_constants_in'
from /opt/ruby/lib/ruby/gems/1.8/gems/activesupport-3.0.9/lib/active_support/dependencies.rb:453:in `load_file'
from /opt/ruby/lib/ruby/gems/1.8/gems/activesupport-3.0.9/lib/active_support/dependencies.rb:340:in `require_or_load'
from /opt/ruby/lib/ruby/gems/1.8/gems/activesupport-3.0.9/lib/active_support/dependencies.rb:300:in `depend_on'
from /opt/ruby/lib/ruby/gems/1.8/gems/activesupport-3.0.9/lib/active_support/dependencies.rb:216:in `require_dependency'
from /opt/ruby/lib/ruby/gems/1.8/gems/mongoid-2.0.1/lib/rails/mongoid.rb:55:in `load_model'
from /opt/ruby/lib/ruby/gems/1.8/gems/mongoid-2.0.1/lib/rails/mongoid.rb:18:in `load_models'
from /opt/ruby/lib/ruby/gems/1.8/gems/mongoid-2.0.1/lib/rails/mongoid.rb:17:in `each'
from /opt/ruby/lib/ruby/gems/1.8/gems/mongoid-2.0.1/lib/rails/mongoid.rb:17:in `load_models'
from /opt/ruby/lib/ruby/gems/1.8/gems/railties-3.0.9/lib/rails/paths.rb:102:in `each'
from /opt/ruby/lib/ruby/gems/1.8/gems/railties-3.0.9/lib/rails/paths.rb:102:in `each'
from /opt/ruby/lib/ruby/gems/1.8/gems/mongoid-2.0.1/lib/rails/mongoid.rb:16:in `load_models'
from /opt/ruby/lib/ruby/gems/1.8/gems/mongoid-2.0.1/lib/mongoid/railtie.rb:88:in `_callback_before_5'
from /opt/ruby/lib/ruby/gems/1.8/gems/activesupport-3.0.9/lib/active_support/callbacks.rb:420:in `_run_prepare_callbacks'
from /opt/ruby/lib/ruby/gems/1.8/gems/actionpack-3.0.9/lib/action_dispatch/middleware/callbacks.rb:40:in `initialize'
from /opt/ruby/lib/ruby/gems/1.8/gems/actionpack-3.0.9/lib/action_dispatch/middleware/stack.rb:33:in `new'
from /opt/ruby/lib/ruby/gems/1.8/gems/actionpack-3.0.9/lib/action_dispatch/middleware/stack.rb:33:in `build'
from /opt/ruby/lib/ruby/gems/1.8/gems/actionpack-3.0.9/lib/action_dispatch/middleware/stack.rb:79:in `build'
from /opt/ruby/lib/ruby/gems/1.8/gems/railties-3.0.9/lib/rails/application.rb:209:in `inject'
from /opt/ruby/lib/ruby/gems/1.8/gems/actionpack-3.0.9/lib/action_dispatch/middleware/stack.rb:79:in `each'
from /opt/ruby/lib/ruby/gems/1.8/gems/actionpack-3.0.9/lib/action_dispatch/middleware/stack.rb:79:in `inject'
from /opt/ruby/lib/ruby/gems/1.8/gems/actionpack-3.0.9/lib/action_dispatch/middleware/stack.rb:79:in `build' …
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails passenger nginx mongoid carrierwave

2
推荐指数
1
解决办法
3397
查看次数

将现有MongoDB字符串属性转换为BSON :: ObjectId

我在MongoDB中有一个文档集合,如果将它保存为BSON :: ObjectId,则该属性存储为字符串.

集合名称是,foo并调用该字段bar.让每个字段bar将其现有值转换为BSON :: ObjectId的实例的最佳方法是什么?

mongodb mongoid

2
推荐指数
1
解决办法
1637
查看次数

Mongoid - 具有引用数组的字段

我是mongoid的新人,我有两个基本的(我认为)问题.什么是在Mongoid中存储引用数组的最佳方法.这是我需要的简短示例(简单投票):

{
  "_id" : ObjectId("postid"),
  "title": "Dummy title",
  "text": "Dummy text",
  "positive_voters": [{"_id": ObjectId("user1id")}, "_id": ObjectId("user2id")],
  "negative_voters": [{"_id": ObjectId("user3id")}]
}
Run Code Online (Sandbox Code Playgroud)

它是正确的方式?

class Person
  include Mongoid::Document
  field :title, type: String
  field :text, type: String

  embeds_many :users, as: :positive_voters
  embeds_many :users, as: :negative_voters
end
Run Code Online (Sandbox Code Playgroud)

还是错了?

我也不确定,这种情况可能是一个糟糕的文档结构?如果用户已经投票并且不允许用户投票两次,我怎么能优雅地获得?也许我应该使用另一种文件结构?

ruby ruby-on-rails mongoid

2
推荐指数
1
解决办法
1304
查看次数

在mongoDB中使用时间间隔增量MapReduce

我得到了来自服务器的一些记录有10分钟的时间间隔(1小时,我会得到6个文件),我想要做的地图减少在接下来的几个小时,每1小时,我将不得不做下一组的地图减少6个文件与去年小时文件我将如何解决这个问题?帮助我在过去1个月里混淆了frm谢谢你Sushil Kr Singh

mongoose mongodb mongomapper mongoid mongodb-.net-driver

2
推荐指数
1
解决办法
1391
查看次数

在Rails中使用MongoID保存二进制数据

这似乎应该是直截了当的工作.MongoDB/BSON具有本机二进制类型,并且Moped驱动程序支持它.但是当我尝试在我的rails项目中创建一个脚手架时

rails g scaffold image png:binary source:string
Run Code Online (Sandbox Code Playgroud)

我得到这个模型:

class Image
  include Mongoid::Document
  field :png, type: Binary
  field :source, type: String
end
Run Code Online (Sandbox Code Playgroud)

这会产生此错误:

uninitialized constant Image::Binary
Run Code Online (Sandbox Code Playgroud)

使用Rails 3.2.8和Mongoid 3.0.9.

ruby-on-rails mongodb mongoid

2
推荐指数
1
解决办法
3131
查看次数

是否可以使用Rails 3更改MongoDB中的默认TimeZone?

我有这样的麻烦:当我创建对象并设置一些日期时间它是在UTC TimeZone中保存数据库.这是一个例子:

//showing full list of object properties 
 Grant _id: 5108ee29e6b564611400000, start_date: 2013-01-30 09:56:27 UTC
 //then showing a.start_date
 Wed, 30 Jan 2013 13:56:27 +0400 
Run Code Online (Sandbox Code Playgroud)

我试图禁止数据库使用UTC.这是mongoid.yml:

development:
  options:
    raise_not_found_error: false
  sessions:
    default:
      use_activesupport_time_zone: true
      use_utc: false
      database: test_mongoid_production
      hosts:
        - localhost:27017
      options:
        consistency: :strong
Run Code Online (Sandbox Code Playgroud)

并在application.rb中:

config.time_zone = 'Moscow'
Run Code Online (Sandbox Code Playgroud)

但它不起作用.

有人可以帮忙解决这个问题吗?

timezone datetime ruby-on-rails mongodb mongoid

2
推荐指数
1
解决办法
1万
查看次数

Authlogic如何与Mongoid一起使用?

Authlogic需要许多Active Record功能,这些功能在Active Model中不可用,因此在Mongoid中不可用.Authlogic如何与Mongoid一起使用?

ruby-on-rails authlogic mongodb mongoid ruby-on-rails-4

2
推荐指数
1
解决办法
457
查看次数

按值或默认值查询

我刚刚使用布尔字段更新了我的一个模型。我已将字段的默认值设置为true。如何以使我将该字段设置为true或没有此字段(默认值)的所有文档的方式查询此字段。

mongodb mongoid

2
推荐指数
1
解决办法
938
查看次数

无法使用rails generate生成mongoid配置文件

shaunstanislaus@Master ~/workspace/mongodb_rails_project/sodibee (master) $ rails g mongoid:config
Could not find generator 'mongoid:config'. Maybe you meant 'migration' or 'controller' or 'generator'
Run `rails generate --help` for more options
Run Code Online (Sandbox Code Playgroud)

ruby ruby-on-rails mongodb mongoid ruby-on-rails-4

2
推荐指数
1
解决办法
2812
查看次数