मैं कुछ ऐसा करना चाहता हूं:
SELECT * FROM USER WHERE NAME LIKE '%Smith%';
अरेल में मेरा प्रयास:
# params[:query] = 'Smith'
User.where("name like '%?%'", params[:query]).to_sql
हालाँकि, यह बन जाता है:
SELECT * FROM USER WHERE NAME LIKE '%'Smith'%';
Arel क्वेरी स्ट्रिंग 'Smith' को सही तरीके से लपेटता है, लेकिन क्योंकि यह एक LIKE स्टेटमेंट है जो काम नहीं करता है।
Arel में एक LIKE क्वेरी कैसे की जाती है?
पीएस बोनस - मैं वास्तव में टेबल पर दो फ़ील्ड स्कैन करने की कोशिश कर रहा हूं, नाम और विवरण दोनों, यह देखने के लिए कि क्या क्वेरी के लिए कोई मैच हैं। वह कैसे काम करेगा?
1
मैंने बोनस के लिए arel जवाब अपडेट किया।
—
पेड्रो रोलो