Khi cố gắng tìm "Harrison Ford" trong một tài liệu, pg_search sẽ trả lại bất kỳ văn bản có chứa 'Harrison' và 'Ford', ví dụ:kết hợp chính xác pg_search thuật ngữ tìm kiếm
pg_search_scope :search_by_full_name, :against => [:first_name, :last_name]
People.search_by_full_name ("Harrison Ford")
có thể trở lại:
George Harrison lái một chiếc Ford Focus
Làm cách nào để đảm bảo chỉ khớp chính xác của 'Harrison Ford'
sẽ trả về?
Xin lỗi, tôi không hiểu lựa chọn thuật toán chuẩn hóa. Tôi đã đặt ngưỡng nào để bỏ qua bất kỳ điều gì khác ngoài kết hợp chính xác? – Ashbury
điểm ở đây là các từ bên cạnh nhau sẽ có thứ hạng cao nhất nếu bạn 'ORDER BY xếp hạng DESC' - bạn sẽ nhận được những gì bạn cần; trong ví dụ của tôi, tôi thậm chí không sử dụng hệ số chuẩn hóa @Ashbury –
Vấn đề là điều này vẫn có thể trả về một loạt các trận đấu gần (và không có kết quả chính xác) được sắp xếp theo mức độ gần với bản gốc. Ngay cả khi tôi đã đạt được kết quả cao nhất thì không có gì đảm bảo rằng nó là một trận đấu chính xác. – Ashbury