gpt4 book ai didi

ruby-on-rails - 如果条件存在于 rails 中,则应用

转载 作者:行者123 更新时间:2023-12-04 06:24:27 25 4
gpt4 key购买 nike

Rails ActiveRecord中有没有一种方法可以基于条件应用where条件?

例如:
假设我想应用过滤器(如果输入参数中存在)。
假设@name是必填字段,而@salary是可选字段。

@name = "test_name"
@salary = 2000


我想做如下的事情:

Employee.where(name: @name)
.where(salary: @salary) if @salary.present?


我知道要在多个数据库调用中实现它,但是我正在寻找一个选项来使它在单个数据库调用中实现。

最佳答案

您只能通过存在的参数查询:

args = { name: @name, salary: @salary.presence }
Employee.where(args.compact)

关于ruby-on-rails - 如果条件存在于 rails 中,则应用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59878163/

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