【问题标题】:In Ruby, what does "scoped" mean?在 Ruby 中,“作用域”是什么意思?
【发布时间】:2013-02-13 07:18:05
【问题描述】:

我遇到过这段代码:

def self.search(search)
    if search
      where(['title LIKE ? OR description LIKE ? ', "%#{search}%", "%#{search}%"])  
    else
      scoped
    end
  end

“范围”语句指的是什么?这对 Google 来说非常困难。

【问题讨论】:

  • 在 Ruby 中它只是一个方法调用。我相信你想问它在 Rails 中是什么意思:)
  • 谢谢! […………]

标签: ruby-on-rails ruby scope rails-activerecord


【解决方案1】:

我认为上面sn-p的本质是:“如果提供了搜索参数,则创建一个限制返回记录的ActiveRecord查询。否则,返回一个空白的slate查询。”所以“作用域”是一个(名字很奇怪的)对象,它代表了一个可以在最终执行之前进一步细化的查询。

http://guides.rubyonrails.org/active_record_querying.html

【讨论】:

    猜你喜欢
    • 2016-08-17
    • 2011-10-14
    • 2014-06-21
    • 2011-04-18
    • 2010-09-18
    • 2011-08-18
    • 1970-01-01
    • 2016-09-17
    • 2021-11-10
    相关资源
    最近更新 更多