Tôi đang sử dụng bộ lọc icontains để tìm kiếm các từ nhưng tôi chỉ muốn nó khớp với toàn bộ từ. ví dụ. nếu tôi tìm kiếm gan, tôi sẽ không muốn nó trở lại giao hàng.Bộ lọc iango phù hợp với toàn bộ từ chỉ
truy vấn của tôi trông như thế này
MyModel.objects.filter(title__icontains=search_word)
Tôi đã thấy bộ lọc __search
nhưng điều này không mang lại kết quả với 3 ký tự trở xuống và các trang web Tôi tòa nhà chứa rất nhiều những điều này có thể được tìm kiếm , ví dụ 'bbc'
Tôi không có quyền truy cập vào db nhưng nếu có ai biết cách tôi có thể tắt tính năng này trong mã thì tôi sẽ vui lòng chuyển sang sử dụng phương thức này làm phương án thay thế.
Có lẽ bạn có thể sử dụng [regex] (http://docs.djangoproject.com/en/dev/ref/models/querysets/#iregex) để thay thế hoặc thêm dấu cách ở đầu và cuối của chuỗi 'search_word'? –
Tôi đã suy nghĩ về việc thêm dấu cách nhưng nếu tiêu đề chỉ là 1 từ hoặc từ xuất hiện ở đầu hoặc cuối tiêu đề thì điều này sẽ không hoạt động. Làm thế nào tôi sẽ làm điều đó thông qua regex? – John