2013-09-06 3 views
10

ich DEPRECATION WARNING: #apply_finder_options is deprecated. erhalten, wenn dies in meinem user.rb versuchen:Deprecation Warnung: #apply_finder_options

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

Genannt durch UsersController:

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

Die Paginierung mit dem will_paginate Juwel gemacht wird.

Was löst die Warnung aus und wie kann ich sie beheben? Ich habe versucht, etwas zu googeln, aber ich finde die Dokumente nicht allzu umfangreich! aus der Paginieren Methode

Antwort

24

Ich bin ziemlich sicher, Sie müssen nur die Reihenfolge und Bedingungen Optionen ziehen und Active Record für diese statt:

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

Perfekt, danke! – mfaerevaag

Verwandte Themen