在表单上执行搜索 - 在视图中显示的筛选条目列表中搜索

时间:2010-12-16 17:55:42

标签: ruby-on-rails

我真的需要一些帮助。我搜索了互联网,但找不到解决问题的方法。

我有一个index.html.erb文件,它显示了一些使用相当复杂的find_by_sql检索的记录。请参阅以下代码:

def index
@refprobes = Refprobe.paginate_by_sql ["select * from ref_probe
                                      where RPR_OID in
                                (SELECT DISTINCT RPR_OID
                                FROM REF_PROBE
                                JOIN ISH_PROBE ON RPR_OID = PRB_MAPROBE
                                JOIN ISH_SUBMISSION ON PRB_SUBMISSION_FK = SUB_OID
                                JOIN SEC_USER_PI ON USP_PI_ID = SUB_PI_FK
                                WHERE USP_USER_FK = " + session[:user_id]+ ")"], :page => params[:page], :per_page => 10
end

现在我想在index.html.erb之上添加一个搜索字段,这将允许用户根据搜索字段中输入的值过滤显示的条目。

def self.search(search)
  if search
    find(:all, :conditions => ['name LIKE ?', "%#{search}%"])
  else
    find(:all)
  end
end

以上代码不符合我的要求,因为我不想搜索表格中的所有记录。我想将搜索范围限制为仅显示index.html.erb。

的条目

我该怎么做?

许多人提前感谢您的帮助..

1 个答案:

答案 0 :(得分:1)

阅读scopes