Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/search/2.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 通过'创建筛选;创建于';和/或在多列中存在数据_Ruby On Rails_Search_Filter - Fatal编程技术网

Ruby on rails 通过'创建筛选;创建于';和/或在多列中存在数据

Ruby on rails 通过'创建筛选;创建于';和/或在多列中存在数据,ruby-on-rails,search,filter,Ruby On Rails,Search,Filter,大菜鸟。最近启动了rails。我一直在搜索,我一直停留在前进的过程中,我已经达到过滤 目前在我的索引页面上,我显示了所有创建的订单。客户(名、姓)通过“现金”、“信用卡”或“支票”付款(以十进制(8,2)显示)。我想创建一个过滤器,经理可以点击一个日期,过滤任何付款类型(现金、信用或支票),用于对账目的 我找了很多,弄不清楚该用什么方法。我最好的猜测是,我必须使用某种“范围化”方法?如果你能给我指出正确的方向,我想自己解决。提前谢谢 范围在ruby中非常好 如果要按特定日期进行筛选。假设你想要

大菜鸟。最近启动了rails。我一直在搜索,我一直停留在前进的过程中,我已经达到过滤

目前在我的索引页面上,我显示了所有创建的订单。客户(名、姓)通过“现金”、“信用卡”或“支票”付款(以十进制(8,2)显示)。我想创建一个过滤器,经理可以点击一个日期,过滤任何付款类型(现金、信用或支票),用于对账目的


我找了很多,弄不清楚该用什么方法。我最好的猜测是,我必须使用某种“范围化”方法?如果你能给我指出正确的方向,我想自己解决。提前谢谢

范围在ruby中非常好

如果要按特定日期进行筛选。假设你想要在今天之后发生的一切,你就做下面的事情。在要定义作用域的模型中放置这样的作用域定义。我们称之为Mimodel

scope :post_dated, where("created_at > CURRENT_TIMESTAMP")
这是一个愚蠢的例子,但仍然是一个例子。如果您想在给定日期后按筛选,可以使用lambdas

scope :post_dated, lambda { |date| where("DATE(created_at) > ?" date) }
然后,通过调用第一个示例中的Mimodel.post_,无论在何处调用它们,都会得到今天之后发生的所有Mimodel对象。对于第二个示例,您为相同的影响调用Mimodel(Date.today),或者为30天前调用Mimodel((Time.now-30.days))


我看不到您的具体问题,因此无法对此提供帮助,但作用域可以帮助您将各种查询定义为单个代码优先调用。

您好,欢迎使用堆栈溢出。所以当你试图制作一个示波器时发生了什么?我们不会为您编写代码,但是如果您尝试了,并且陷入困境,我们将帮助您克服错误。所以:你自己试试看,如果它没有按你需要的方式工作,就回来找我们。