clear-code / redmine_full_text_search

Full text search for Redmine
MIT License
63 stars 24 forks source link

Logical NOT is ignored #25

Closed kou closed 7 years ago

kou commented 7 years ago

Groongaは-で論理否定(その単語が含まれていないという条件)を指定できますが、検索ボックスで「Groonga - PostgreSQL」と指定しても無視され、「Groongaを含むがPostgreSQLは含まない」ではなく「GroongaもPostgreSQLも含む」と解釈されます。

たぶん、Redmineのレベルで1文字のトークンが無視されているから https://github.com/redmine/redmine/blob/master/lib/redmine/search.rb#L63 な気がします。ユーザーからの入力(このクラスの@question相当?)をそのままGroongaで解釈できるとうれしいなぁと思います。

なお、回避策として-の後に空白を入れずに「Groonga -PostgreSQL」とする方法があります。

okkez commented 7 years ago

v0.5.0 でクエリー構文を全部使えるようになったはず。