[英]Custom Ransacker to ignore dash in database
我正在嘗試自定義Ransack,以允許搜索文本字段,並且可能讓Rasack忽略dash
。
如果我在搜索框中輸入以下內容:
123456
Ransack查詢將在數據庫中找不到此記錄:
123-456
現在,如果我不輸入破折號,將找不到記錄。 我了解為什么它試圖匹配數據庫記錄,但顯然找不到它,因為破折號是查找該記錄所必需的。
是否可以自定義Ransack,以便搜索仍能找到參數中沒有破折號的記錄?
看起來創建自定義Ransacker可以解決問題。
ransacker :number do
Arel.sql("translate(number, '-', '')")
end
使用Ransack進行搜索時,這將從數據庫的數據表示形式中刪除破折號。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.