Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/65.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 有多个条件,将进行分页_Ruby On Rails_Will Paginate - Fatal编程技术网

Ruby on rails 有多个条件,将进行分页

Ruby on rails 有多个条件,将进行分页,ruby-on-rails,will-paginate,Ruby On Rails,Will Paginate,我正在使用will_paginate进行分页,但一次似乎不能使用多个条件。例如,如果我想要一个以“Where office_id=5”结尾的sql查询,那么它非常简单,我可以这样做。但是如果我想做“Where office_id=5,primary_first='Mark'”怎么办?我不能那样做。我不知道如何输入多个条件。你能帮忙吗 下面是我的代码示例: def self.search(search, page, office_id) paginate :per_page => 5,

我正在使用will_paginate进行分页,但一次似乎不能使用多个条件。例如,如果我想要一个以“Where office_id=5”结尾的sql查询,那么它非常简单,我可以这样做。但是如果我想做“Where office_id=5,primary_first='Mark'”怎么办?我不能那样做。我不知道如何输入多个条件。你能帮忙吗

下面是我的代码示例:

def self.search(search, page, office_id)
  paginate :per_page => 5, :page => page,
           :conditions => ['office_id', "%#{office_id}"], # + ' and primary_first like ?', "%#{params[:search]}%"],
           #:conditions => ['primary_first', "%#{search}%"],
           :order => 'created_at'
结束

谢谢你的帮助

试试
:条件=>[“office\u id=?和primary\u first=?”,office\u id,search]

或使用动态查找器:

首先按办公室id和主要id分页(办公室id,搜索,:per\u page=>5,:page=>page,:order=>created\u at')


这些仅适用于等效性,但db正在对其进行定义。如果您需要使用LIKE,请参见

如果我正确理解您的需求,这应该可以:

def self.search(search, page, office_id)
  paginate :per_page => :page => page,
           :conditions => ["office_id LIKE ? and primary_first LIKE ?", "%#{office_id}", "%#{search}%"]
           :order => :created_at
end
“%#{office_id}”
什么是
%
的,您想做一个类似于
的比较吗?