Rails和Postgresql连接空间

时间:2012-11-01 12:23:25

标签: ruby-on-rails ruby-on-rails-3 postgresql concatenation

我有一个用于自动完成的用户的搜索字段,它正在工作,但我将我的数据库从mySQL迁移到Postgresql但无法使连接工作。当我键入名字或姓氏时,但是当我的用户键入名字姓氏(他们之间有空格)时,它不再起作用,无法使其工作或弄清楚该怎么做。

这是我的SQL命令:

 @users = User.find(:all,:conditions => ['(last_name LIKE ? OR first_name LIKE ? OR    (first_name || last_name) LIKE ? OR (last_name || first_name) LIKE ?) AND adult = ?', "%#{params[:term]}%", "%#{params[:term]}%", "%#{params[:term]}%", "%#{params[:term]}%", false])

我的问题在于:(first_name || last_name)当用户键入FirstNameLastName时将返回正确的值,因此concat在这里工作,但是当我尝试添加空间时我无法弄清楚我尝试了什么错误:

(first_name ||' '|| last_name) or (first_name ||" "|| last_name)

但是这些都不会起作用我在stackoverflow上发现了另一个线程,但无法使它工作,我不明白为什么......

谢谢,

1 个答案:

答案 0 :(得分:4)

不知道Rails但是怎么样

'....(first_name || \' \' || last_name)...'