Belirli bir dizeyi içeren bazı öğeleri bulmaya çalışıyorum. Bunu yaparsam, tam eşleşme için bir sorgu üretecektir. LIKE %keyword%
sorgusu oluşturmasını istiyorum. Bunu nasıl yapabilirim?ActiveRecord'da% LIKE sorgusunu nasıl yaparım?
5
A
cevap
9
like_keyword = "%#{keyword}%"
MyModel.where("description LIKE ?", like_keyword)
6
MyModel.where("description LIKE (?)", "%#{keyword}%")
İşe yaramıyor. Oluşturulan sorgu şu şekilde sona erer: 'LIKE '%' anahtar sözcüğü '%'' ve bir istisna atar. – Geo
Bunun için edited..try o .. – rubyprince
Teşekkür vardır. Ben de bir 'LIKE' operatörünü kullanarak bir arama yapıyorum ve güdük. "Benzer anahtar kelimemi" önceden de belirledim ve sonra yapıyor: "collection = Model.where" ("attribute like?", "% # {Keyword}%") – Tass