Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/62.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 如何查找ID不是1,2,3的项目_Ruby On Rails_Ruby - Fatal编程技术网

Ruby on rails 如何查找ID不是1,2,3的项目

Ruby on rails 如何查找ID不是1,2,3的项目,ruby-on-rails,ruby,Ruby On Rails,Ruby,我正在尝试创建一个项目列表,但在该项目列表中,我需要确保其中3个项目不在列表中 如何在Rails中实现这一点 我正在努力让这一切顺利进行: not_droppable = [126,127,128] @items = Item.where('id not in (?)', not_droppable) Item.all将始终返回一个数组。用于从集合中剔除项元素,这些元素的ids包含在不可拖放的数组中。如何存储列表?你到底需要做什么?示例代码可能会有所帮助。感谢您的回复。我编辑了这篇文章

我正在尝试创建一个项目列表,但在该项目列表中,我需要确保其中3个项目不在列表中

如何在Rails中实现这一点

我正在努力让这一切顺利进行:

not_droppable = [126,127,128]   
@items = Item.where('id not in (?)', not_droppable)


Item.all
将始终返回一个数组。用于从集合中剔除
元素,这些元素的
id
s包含在
不可拖放的
数组中。

如何存储列表?你到底需要做什么?示例代码可能会有所帮助。感谢您的回复。我编辑了这篇文章,我把它修好了。ID必须在caps中heh.SQL不区分大小写(除非引用标识符),因此升级
ID
几乎肯定不能解决您的问题,其他问题正在发生。没有任何问题,它现在可以工作,因为我将代码放在控制器中,而不是创建范围。如果我创建了一个名为“purchasable”的范围并在控制器中使用它,我会得到一个“undefined method:purchasable”错误:/
@items = Item.all.delete_if {|x| not_droppable.include?(x.id)}