我使用以下代码使用SearchKick进行搜索:
Book.search(q,
misspellings: { below: 5 },
fields: [:name, :author, :pages],
order: { name: 'asc' },
page: params[:page],
per_page: 20)
当我搜索name
和author
时,它运行正常。
但是,当我在130
搜索page
时,它不会搜索该字段。
name
和author
是Book模型的字符串字段,page
是整数字段。
我的猜测是130
作为字符串出现,并且错误地尝试匹配整数。
如何制作以便我可以根据页码进行搜索?
答案 0 :(得分:0)
您是否尝试在to_i
上致电params[:page]
?
Book.search(q,
misspellings: { below: 5 },
fields: [:name, :author, :pages],
order: { name: 'asc' },
page: params[:page]&.to_i,
per_page: 20)
如果你是对的并且它正在将整数与字符串进行比较,那么这将解决它。