|
1
156
在Rails 4及更高版本中可以执行以下操作:
你可以把它包在一个很好的范围内。
您可以排除任意数量的用户,因为
例如:
甚至通过其他协会:
看到了吗
|
|
|
2
32
|
|
|
3
16
在控制器中:
当使用nil调用时,此作用域将返回所有用户,在其他情况下,将返回除param中给定的用户以外的所有用户。此解决方案的优点是,您可以自由地将此调用与其他命名作用域链接起来,也可以对paginate方法进行分页。 |
|
|
4
7
|
|
|
5
6
关于GhandaL的答案,至少在Rails3中,值得修改一下
(此处的主要更改来自'id!=…'到'users.id!=…';也是作用域而不是命名的\u作用域(适用于Rails 3)
为单独的回答道歉…我还没有声誉直接评论甘达尔的回答。 |
|
|
6
3
我用的很简单的方法
|
|
|
7
1
User.all.where(“id NOT IN(?),current\u User.id)将通过异常
未定义的方法,其中
|
|
|
8
0
另一种简单的方法:
|
|
|
9
0
数组会更有帮助
数组ID[1]=3
|
|
|
10
0
User.where(:id.ne=>当前用户id) |
|
|
11
-5
这将返回@users数组的一个副本,但是删除了当前的\u user对象(它首先包含在数组中)。 注意:如果数组减法是基于对象的精确匹配,而不是基于内容,则这可能不起作用。但我试的时候,它是用弦做的。请记住将当前用户括在[]中,以将其强制放入数组中。 |