我有一个自动完成用户的搜索字段,它正在工作,但我将我的数据库从 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上找到了另一个线程但无法让它工作,我不明白为什么......
谢谢,