Tôi muốn làm một cái gì đó như:
SELECT * FROM USER WHERE NAME LIKE '%Smith%';
Nỗ lực của tôi ở Arel:
# params[:query] = 'Smith'
User.where("name like '%?%'", params[:query]).to_sql
Tuy nhiên, điều này trở thành:
SELECT * FROM USER WHERE NAME LIKE '%'Smith'%';
Arel kết thúc chuỗi truy vấn 'Smith' một cách chính xác, nhưng vì đây là câu lệnh LIKE nên nó không hoạt động.
Làm cách nào để thực hiện một truy vấn LIKE trong Arel?
PS Bonus - Tôi thực sự đang cố gắng quét hai trường trên bảng, cả tên và mô tả, để xem có bất kỳ trường nào phù hợp với truy vấn không. Nó sẽ hoạt động như thế nào?