Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/webpack/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 如何在rails 3应用程序中使用dob日期时间字段搜索年龄从到?_Ruby On Rails_Ruby On Rails 3_<img Src="//i.stack.imgur.com/RUiNP.png" Height="16" Width="18" Alt="" Class="sponsor Tag Img">elasticsearch_Tire - Fatal编程技术网 elasticsearch,tire,Ruby On Rails,Ruby On Rails 3,elasticsearch,Tire" /> elasticsearch,tire,Ruby On Rails,Ruby On Rails 3,elasticsearch,Tire" />

Ruby on rails 如何在rails 3应用程序中使用dob日期时间字段搜索年龄从到?

Ruby on rails 如何在rails 3应用程序中使用dob日期时间字段搜索年龄从到?,ruby-on-rails,ruby-on-rails-3,elasticsearch,tire,Ruby On Rails,Ruby On Rails 3,elasticsearch,Tire,我是轮胎新手,正在尝试找出如何在我的个人资料模型中搜索DOB(出生日期)列 尝试建立一个简单的搜索,在这里我可以设置年龄从和年龄到(比如20到60岁) 既然我只有一个dob字段,我该怎么做 是否最好在创建记录时计算年龄并将其存储在列中,然后将其添加到我的配置文件模型中以清除搜索 在这方面最好的方法是什么?thx如果您的模型有一个dob字段,那么您可以执行如下查询: Profile.where(:dob => date_from..date_to) 您可以根据您试图查询的任何年龄,通过

我是轮胎新手,正在尝试找出如何在我的个人资料模型中搜索DOB(出生日期)列

  • 尝试建立一个简单的搜索,在这里我可以设置年龄从和年龄到(比如20到60岁)
  • 既然我只有一个dob字段,我该怎么做
  • 是否最好在创建记录时计算年龄并将其存储在列中,然后将其添加到我的配置文件模型中以清除搜索

在这方面最好的方法是什么?thx

如果您的模型有一个dob字段,那么您可以执行如下查询:

Profile.where(:dob => date_from..date_to)

您可以根据您试图查询的任何年龄,通过执行类似于
date.today-18.years
date.today-24.years
的操作,预先计算
date\u从
date\u到
,如果您的模型有一个dob字段,那么您可以执行如下查询:

Profile.where(:dob => date_from..date_to)

您可以根据您试图查询的任何年龄,通过执行类似于
date.today-18.years
date.today-24.years
的操作,从
date\u到
预先计算
date\u

scope :age_from, lambda { |age| 
 { :conditions => ["profiles.dob >= ?", DateTime.now << (12* age)] } 
}

scope :age_to, lambda { |age| 
 { :conditions => ["profiles.dob <= ?", DateTime.now << (12* age)] } 
}
scope:age_from,lambda{| age |

{:conditions=>[“profiles.dob>=?”,DateTime.now[“profiles.dob要使用作用域,可以执行以下操作:

scope :age_from, lambda { |age| 
 { :conditions => ["profiles.dob >= ?", DateTime.now << (12* age)] } 
}

scope :age_to, lambda { |age| 
 { :conditions => ["profiles.dob <= ?", DateTime.now << (12* age)] } 
}
scope:age_from,lambda{| age |

{:条件=>[“profiles.dob>=?”,DateTime.now[“profiles.dob最终将年龄作为一个整数计算到一个单独的字段中,全部为真应用程序I根据dob计算年龄,而它现在在记录保存时计算年龄作为一个整数计算到一个单独的字段中,全部为真应用程序I根据dob计算年龄,而它现在在记录保存时计算年龄