Làm cách nào để tìm kiếm chuỗi trong Ruby on Rails?Làm thế nào để tìm kiếm một văn bản với Active Record trong Ruby on Rails 3?
Ví dụ: tất cả bản ghi có cột chứa "văn bản".
Bản ghi hiện hoạt có phương pháp cho nó hay tôi phải sử dụng SQL "LIKE" cho nó?
do đó không có cách nào trong Active Record để tìm kiếm cho một chuỗi trong mỗi bảng và các cột của chúng? –
Tìm kiếm trong tất cả các bảng có thể được thực hiện với truy vấn thô như sau: 'SELECT 'table1' AS table_name, id FROM table1 WHERE c1 LIKE"% text% "HOẶC c2 LIKE"% text% "UNION ALL SELECT 'table2' AS table_name, id FROM table2 WHERE c3 LIKE "% text%" ', nhưng tôi sẽ không làm điều đó, nó hoàn toàn khó xử. Nếu bạn đang sử dụng MySQL, nó có một số khả năng lập chỉ mục toàn văn bản - http://dev.mysql.com/doc/refman/5.0/en/fulltext-search.html - nhưng tôi không biết nó tốt như thế nào. Tôi không biết về hỗ trợ tìm kiếm toàn văn bản trong các DB quan hệ khác. Sắp xếp lại - AR sẽ không giúp bạn, sử dụng phần mềm lập chỉ mục toàn văn nếu bạn có thể. – skalee
Chỉ tìm thấy một giây trước, nó có thể giúp bạn http://snowgiraffe.com/rdocs/ar-extensions/classes/ActiveRecord/Base.html – skalee