Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/65.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 检索具有不同列值的最近数据-mongoid+;栏杆4_Ruby On Rails_Mongodb_Ruby On Rails 4_Mongoid - Fatal编程技术网

Ruby on rails 检索具有不同列值的最近数据-mongoid+;栏杆4

Ruby on rails 检索具有不同列值的最近数据-mongoid+;栏杆4,ruby-on-rails,mongodb,ruby-on-rails-4,mongoid,Ruby On Rails,Mongodb,Ruby On Rails 4,Mongoid,我在mongodb上有一个kevent集合,看起来像: _id, user_id action created_at 43gy5235rwedwe 11 logout 2014-05-30 04:01:32 +0000 563gy5wwwedwex 11 running 2014-05-30 04:01:28 +0000 77gy5235rwedwe

我在mongodb上有一个
kevent
集合,看起来像:

_id,                user_id     action          created_at
43gy5235rwedwe      11          logout          2014-05-30 04:01:32 +0000
563gy5wwwedwex      11          running         2014-05-30 04:01:28 +0000
77gy5235rwedwe      26          logout          2014-05-30 04:01:22 +0000
3gy5235rwed65e      11          create          2014-05-30 04:01:20 +0000
4dgy5er35rwcwe      11          upgrade         2014-05-30 04:01:18 +0000
df5gy5s35rwwwd      43          poked           2014-05-30 04:00:32 +0000
fggy5235r322fs      29          login           2014-05-30 03:01:31 +0000
bhgy5235rwedfs      43          login           2014-05-30 03:01:30 +0000
ftweerw35rwedw      11          jumped          2014-05-30 04:01:29 +0000
we2y5s35rwedqq      12          created         2014-05-30 02:01:28 +0000
36gy5sa5rwesad      26          login           2014-05-30 01:01:27 +0000
36q4sa5rwesadw      11          login           2014-05-30 00:01:26 +0000
我使用mongoid(在rails 4中)检索不同用户最近的三个动作。所以结果应该是这样的:

_id,                user_id     action          created_at
43gy5235rwedwe      11          logout          2014-05-30 04:01:32 +0000
77gy5235rwedwe      26          logout          2014-05-30 04:01:22 +0000
df5gy5s35rwwwd      43          poked           2014-05-30 04:00:32 +0000
User.any_of("$and" => [{action: "logout", action: "poked"}])
如何使用mongoid获得该功能?

试试这个

Sql:

蒙戈:

db.users.find(
    { status: "A",
      age: 50 }
)
在您的情况下,您可以这样做:

_id,                user_id     action          created_at
43gy5235rwedwe      11          logout          2014-05-30 04:01:32 +0000
77gy5235rwedwe      26          logout          2014-05-30 04:01:22 +0000
df5gy5s35rwwwd      43          poked           2014-05-30 04:00:32 +0000
User.any_of("$and" => [{action: "logout", action: "poked"}])
您可以看到SQL与Mongo的每一个比较