我们可以或范围生成器中的范围吗?

发布于 2024-11-27 09:20:19 字数 531 浏览 1 评论 0原文

我正在使用 ryanb-scope-builder 并且面临以下问题。

def self.search(options)
  scope_builder do |builder|
    builder.released.visible
    builder.cheap if options[:cheap]
  end
end

这会生成具有以下内容的查询:

builder.released.visible *AND* builder.cheap if options[:cheap]

而我希望对作用域进行“或”运算,例如

builder.released.visible *OR* builder.cheap if options[:cheap]

是否有任何作用域生成器 gem 可以解决此问题? 谢谢

I am using ryanb-scope-builder and I am facing following issue.

def self.search(options)
  scope_builder do |builder|
    builder.released.visible
    builder.cheap if options[:cheap]
  end
end

This generates query which has :

builder.released.visible *AND* builder.cheap if options[:cheap]

Whereas I want scope to be OR'ed like

builder.released.visible *OR* builder.cheap if options[:cheap]

Is there any scope builder gem which can solve this problem ??
thanks

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

把梦留给海 2024-12-04 09:20:19

我不知道这个作用域生成器,但通常,OR 查询是使用 Arel 进行的。

看看这里: ActiveRecord OR 查询

此外,我怀疑这个宝石是否有用:

  • scopes本身很容易链接

  • 最后一次提交是在 2009 年

I don't know this scope builder but generally, OR queries are made with Arel.

Have a look here: ActiveRecord OR query

Besides, I doubt this gem is that useful:

  • scopes are natively easy to chain

  • the last commit was in 2009

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文