gpt4 book ai didi

ruby-on-rails - 在事件记录中动态查找条件

转载 作者:数据小太阳 更新时间:2023-10-29 07:14:04 26 4
gpt4 key购买 nike

我在 rails 中有一个索引操作,可以处理很多参数,例如:

params[:first_name] # can be nil or first_name
params[:age] # can be nil or age
params[:country] # can be nil or country

在寻找用户时,我想 AND 所有不为零的条件。这给了我查找条件的 8 个排列。

我怎样才能让我的代码保持干爽和灵活,而不是以一堆 if 语句结束,只是为了构建查找的条件。请记住,如果没有指定条件,我只想返回 User.all

最佳答案

怎么样:

conditions = params.only(:first_name, :age, :country)
conditions = conditions.delete_if {|key, value| value.blank?}

if conditions.empty?
User.all
else
User.all(:conditions => conditions)
end

关于ruby-on-rails - 在事件记录中动态查找条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1169368/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com