gpt4 book ai didi

ruby-on-rails - 具有多个参数的 Rails 作用域

转载 作者:行者123 更新时间:2023-12-01 12:40:27 26 4
gpt4 key购买 nike

在我的 offer.rb 模型中,我正在对获得这些优惠的客户进行一些过滤。但我希望能够在我的范围内传递另一个参数,例如根据客户的年龄进行搜索。

这是我现在的报价模型中的内容:

scope :with_client_id, lambda { |client_id| where(:client_id => client_id) }

在 View 中:

<%= f.select(:with_client_id, options_for_select(current_partner.clients.collect{|c| [c.name, c.id]}), { include_blank: true}) %>

在这个范围内,我如何传递客户的年龄?

谢谢!

最佳答案

两种选择

使用“splat”

scope :with_client_id_and_age, lambda { |params| where(:client_id => params[0], :age => params[1]) }

然后你必须调用它:

Offer.with_client_id_and_age( client_id, age )

使用参数哈希

scope :with_client_id_and_age, lambda { |params| where(:client_id => params[:client_id], :age => params[:age]) }

然后你必须调用它:

Offer.with_client_id_and_age( { client_id: client_id, age: age } )

关于ruby-on-rails - 具有多个参数的 Rails 作用域,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25365741/

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