Şunun gibi bir şey yapmak istiyorum:
SELECT * FROM USER WHERE NAME LIKE '%Smith%';
Arel'deki girişimim:
# params[:query] = 'Smith'
User.where("name like '%?%'", params[:query]).to_sql
Ancak bu şu olur:
SELECT * FROM USER WHERE NAME LIKE '%'Smith'%';
Arel, 'Smith' sorgu dizesini doğru bir şekilde sarar, ancak bu bir LIKE ifadesi olduğu için çalışmaz.
Arel'de LIKE sorgusu nasıl yapılır?
PS Bonus - Sorguyla herhangi bir eşleşme olup olmadığını görmek için tablodaki hem ad hem de açıklama olmak üzere iki alanı taramaya çalışıyorum. Bu nasıl çalışır?
1
Bonus için arel cevabını güncelledim.
—
Pedro Rolo