Ransack用空格搜索全名

时间:2015-04-20 22:44:34

标签: mysql ruby-on-rails ruby-on-rails-4 ransack

我有一个包含字段

的用户模型
:first_name 
:last_name

我想要一个单词搜索框,上面写着用户可以搜索

的full_name
John Doe 

在我的user.rb

ransacker :full_name do |parent|
  Arel::Nodes::NamedFunction.new('concat_ws', [' ',    parent.table[:first_name], parent.table[:last_name]])
end

在我的观点中我有

= f.text_field :full_name_cont, placeholder: 'full name'

但是,当用户创建一个名称前面有空格

 first_name: 'John'
 last_name: ' Doe'

我搜索

 'John Doe'
 - no results

但如果我搜索

  'John  Doe' (two spaces in between)
   - 'John Doe'

我如何防止这种情况发生

我知道理想情况下我会想要在创建之前通过剥离空格来清理数据....但是最容易解决这个错误的方法是什么。

由于

0 个答案:

没有答案