2012-05-23 25 views
10

Rails uygulamasında, pg_search gem kullanıyorum. Bunun ne anlama geldiğini emin değilim"Metin arama sorgusu, lexemes içermiyor:" ne anlama geliyor?

NOTICE: text-search query doesn't contain lexemes: "" 
LINE 1: ...e("pg_search_documents"."content"::text, '')))), (''), 0)) A... 

, ya da bir sorun olup olmadığını ben endişe olmalıdır: Ben RSpec paketi çalıştırdığınızda ben birçok satırları görmek.

Herkes yardımcı olabilir mi?

cevap

8

Ben pg_search yazarı ve bakıcısıyım.

Bu mesaj, arama sorgunuzun içinde kelime bulunmadığı anlamına gelir. Bu nedenle, PostgreSQL sizi herhangi bir sonuç almayacağınız konusunda uyarıyor ve sorgu bu kadar kullanışlı değil.

Yoksaymak güvenlidir. pg_search her zaman sorgusu anlamsız olduğu gibi kenar durumlarda bile sorguyu veritabanına gönderir. Bunu önlemek istiyorsanız, boş sorguları algılamak ve pg_search kapsamına çağırmamak için uygulamanıza mantık ekleyebilirsiniz.

1

Raylarda 3.2.2 Bunu postgreslerden gelen uyarı mesajlarından kurtulmak için My database.yml dosyasında kullandım.

test: 
    min_messages: warning 
    #... default configurations... 
+0

teşekkürler chopi321, bu yararlı bir öğüt. Bu mesajların ne anlama geldiğini biliyor musun? –

+0

Geç cevap olarak @nertzy için özür dilerim, "Bu mesaj, arama sorgunuzun hiçbir kelime içermediği anlamına gelir. Bu nedenle, PostgreSQL sizi herhangi bir sonuç almayacağınız konusunda uyarır ve sorgu bu kadar faydalı değildir. " – chopi321