Refactoring into Model...need help

I posted this on the 2dcjqgrid group but maybe I'm better off here.

http://groups.google.com/group/2dcjqgrid/browse_thread/thread/ad4115ed1bca2050

I'm fairly new to rails and am having a bit of trouble moving my
jqgrid code from the controller to the model. It worked fine in the
controller. I know that the model can't use params so I'm passing
those into a method, but when I look at the sql query it is not
passing all the arguements. TIA for any help.

class OligosController < ApplicationController
        def index
          oligos = Oligo.search( params[:freezer], params[:cane],
params
[:box], params[:boxname], params[:slot], params[:oligoname], params
[:sequence], params[:page], params[:sidx], params[:sord], params
[:rows], params[:_search] )
          respond_to do |format|
                            format.html
                            format.json { render :json =>
oligos.to_jqgrid_json
([:id,:freezer,:cane,:box,:boxname,:slot,:oligoname,:sequence],

params
[:page], params[:rows], oligos.total_entries) }
                end
        end
end

class Oligo < ActiveRecord::Base
        def self.search(freezer, cane, box, boxname, slot, oligoname,
sequence, page, sidx, sord, rows, _search)
                find(:all) do
            if _search == "true"
              freezer =~ "%#{freezer}%" if freezer.present?
              cane =~ "%#{cane}%" if cane.present?
              box =~ "%#{box}%" if
box.present?
              boxname =~ "%#{boxname}%" if boxname.present?
              slot =~ "%#{slot}%" if slot.present?
              oligoname =~ "%#{oligoname}%" if oligoname.present?
              sequence =~ "%#{sequence}%" if sequence.present?
            end
            paginate :page => page, :per_page => rows
            order_by "#{sidx} #{sord}"
                end
        end
end

The original code can be found here....
http://www.2dconcept.com/jquery-grid-rails-plugin

class Oligo < ActiveRecord::Base
def self.search(freezer, cane, box, boxname, slot, oligoname,
sequence, page, sidx, sord, rows, _search)
find(:all) do
if _search == "true"
freezer =~ "%#{freezer}%" if freezer.present?
cane =~ "%#{cane}%" if cane.present?
box =~ "%#{box}%" if
box.present?
boxname =~ "%#{boxname}%" if boxname.present?
slot =~ "%#{slot}%" if slot.present?
oligoname =~ "%#{oligoname}%" if oligoname.present?
sequence =~ "%#{sequence}%" if sequence.present?
end

What is this code suppose to do ? The code above isn't actually doing
anything as far as I can tell - just comparing pairs of strings with
the =~ method (which as far as I can tell will just raise an exception
because it's expecting something more like a RegExp).
If you're trying to build up a set of conditions I'd look at
named_scope (either creating scopes for you different criteria and
chaining them as appropriate or by using scoped )

Fred

Here is the example code I was basing this off of.

def index
  users = User.find(:all) do
    if params[:_search] == "true"
      pseudo =~ "%#{params[:pseudo]}%" if params[:pseudo].present?
      firstname =~ "%#{params[:firstname]}%" if params
[:firstname].present?
      lastname =~ "%#{params[:lastname]}%" if params
[:lastname].present?
      email =~ "%#{params[:email]}%" if params[:email].present?
      role =~ "%#{params[:role]}%" if params
[:role].present?
    end
    paginate :page => params[:page], :per_page => params[:rows]
    order_by "#{params[:sidx]} #{params[:sord]}"
  end

  respond_to do |format|
    format.html
    format.json { render :json => users.to_jqgrid_json
([:id,:pseudo,:firstname,:lastname,:email,:role],
                                                       params[:page],
params[:rows], users.total_entries) }
  end
end

<%= jqgrid("Football Players", "players", "/users",
  [
    { :field => "id", :label => "ID", :width => 35, :resizable =>
false },
    { :field => "pseudo", :label => "Pseudo" },
    { :field => "firstname", :label => "Firstname" },
    { :field => "lastname", :label => "Lastname" },
    { :field => "email", :label => "Email" },
    { :field => "role", :label => "Role" }
  ]
) %>