【问题标题】:Deprecation warning: #apply_finder_options弃用警告:#apply_finder_options
【发布时间】:2013-09-11 03:14:04
【问题描述】:

在我的user.rb 中尝试此操作时,我得到了DEPRECATION WARNING: #apply_finder_options is deprecated.

def User.search(search, page)
  paginate page: page,
           per_page: 10,
           conditions: ['name LIKE ?', "%#{search}%"],
           order: 'name'
end

通过UsersController调用:

def index
  @users = User.search(params[:search], params[:page])
end

使用will_paginate gem 完成分页。

是什么触发了警告,我该如何解决?尝试了一些谷歌搜索,但我发现文档不太全面!

【问题讨论】:

    标签: ruby-on-rails ruby-on-rails-4 deprecated will-paginate


    【解决方案1】:

    我很确定您只需将 order 和 conditions 选项从 paginate 方法中拉出并使用 Active Record 代替:

    def User.search(search, page)
      order('name').where('name LIKE ?', "%#{search}%").paginate(page: page, per_page: 10)
    end
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-07-12
      • 2017-08-22
      • 2011-09-29
      • 2018-09-08
      • 2021-08-19
      相关资源
      最近更新 更多