AND検索の対象フィールド拡張可否
下記フィールドを跨いでの「AND検索」が出来ず、何とか出来るようにならないでしょうか。。。 Redmine5.1では、全検索対象テキストが実装され、 こちらのプラグインでも実装いただければ、とてもありがたいです。
・AND検索可 ・題名 AND 題名 ・題名 AND 説明 ・説明 AND 説明
・AND検索不可 ・題名/説明 AND コメント/カスタムフィールド ・コメント#1 AND コメント#2 ・コメント AND カスタムフィールド ・カスタムフィールドA AND カスタムフィールドB
検索対象を指定した全文検索をしたいというのであっていますか?
それとも、Redmineのチケット検索画面と統合できないか?という話ですか?
全文検索で複数フィールドを跨いでAND検索出来れば、というお願いになります。 具体的には、題名、説明、コメント、カスタムフィールドの値を検索対象に出来れば。
あれ、今ってすべてのフィールドに対しての全文検索になっていませんか?
https://redmine.example.com/search とかの検索画面での話ですよね?
全文検索自体は全てのフィールドが対象なんですが、(多分カテゴリ以外) AND検索を行うと、複数フィールドを跨いでヒットしないようになっているかと思います。 下記バージョンを使用しています。 Redmine:4.2 full text search:1.0.4
うーん、AND検索はどうやってやっていますか?
「キーワード1 AND キーワード2」ではなく、「キーワード1 キーワード2」と指定することになります。
ところで。。。 Redmine 4.2はすでにサポートされていないのでバージョンアップしたほうがいいかと思います。。。
ご記載いただいた通り、キーワード1 キーワード2で検索しています。 使用プラグイン未対応等があり、難しいです。。。
実際の検索画面ではこのような感じです。
あぁ、わかった気がします。
今は、検索結果の各エントリーがチケットの説明とかチケットのコメントの単位になっているのを、チケットに紐づくどれか(説明でもコメントでもカスタムフィールドでも)がヒットしたら、対象がどれでも紐づいているチケットが検索結果のエントリーにしたい、という話な気がします。とすると、チケット一覧ページでの検索フォームに統合するのがそれっぽいんですよねぇ。その場合、ソートが効かなくなる(既存のチケットのソート機能を使うことになる)のですが、それはアリですか?
使用プラグイン未対応等があり、難しいです。。。
[PR] 有償ですが、クリアコードという会社が未対応プラグインのメンテナンスも含めてRedmineのバージョンアップサポートやこのプラグインのサポートも含んだサポートサービスを提供しているので、必要であれば問い合わせしてみてください。
全文検索=チケットの検索機能のイメージで使用していますので、その通りです。 ハイライトが使えなくなるのが残念ですが。。。 チケット一覧のフィルターに全文検索が追加されるイメージでしょうか。 既存のチケット一覧でのソート機能でも大丈夫です。
サポートの紹介までいただき、ありがとうございます。検討させていただきます。
ハイライトが使えなくなるのが残念ですが。。。
あぁ、そうですね。UI的にハイライトを表示する箇所がなくなるのでそうなります。タイトルにマッチした場合だけならいけるかも。。。?
チケット一覧のフィルターに全文検索が追加されるイメージでしょうか。
検索対象に既存の「題名」や「説明」のように「全文検索」が追加されるみたいなイメージですか?
そうではなくて、できれば、検索対象のところではなく、「含む」とか「いずれかを含む」とかが出てくる検索方法のところでやれるといいなぁと思っています。たとえば、このプラグインがインストールされた状態で既存の「含む」とかの検索方法を指定したら高速に検索できるようになる、みたいなイメージです。(新しい検索方法を追加するのではなく。)
その場合、検索対象は各フィールドを指定して、フィールド同士はor条件とかですか? あまりイメージが出来ないですが、全文検索からは離れる気が。
検索対象は各フィールドを指定しますが、フィールド同士はANDです。既存のチケット一覧のフィルターもANDなはずなので、それと同じになります。
あれ、うーん、あぁ、フィールドごとにANDしたいわけじゃなかったんでしたね。各キーワードがどのフィールドに出現してもよくしたいのか。それが「全検索対象テキスト」フィールドになるわけですか。
「全検索対象テキスト」フィールドのRedmineの実装をざっと見てみましたが、このプラグインで置き換えることもできそうな気はするので、その方向で実現するのがよさそうな気がしてきました。
フィールド同士はANDになってしまいますか。 フィールドを跨いでのAND検索がこちらのプラグインで実装いただけるなら、とてもありがたいです。
フィールドを跨いでのAND検索がこちらのプラグインで実装いただけるなら、とてもありがたいです。
はい、こちらフィールドを跨いでのAND検索を実現できるように進めていきますね。 具体的には、チケット一覧での「全検索対象テキスト」フィルターを拡張する方針で実現して行こうと考えています 🙏🏾
TODO
全検索対象テキストを利用して、フィールドを跨いだAND検索をできるようにする
- Redmineの
IssueQuery#sql_for_any_searchable_field(全検索対象テキスト)の調査 - Full text search plugin側で、
IssueQuery#sql_for_any_searchable_fieldを拡張する- [x] 拡張用のmoduleをスケルトンで実装: GH-164
- [x] スキーマの設計と実装: GH-165
- [ ] 検索部分の実装
- [ ] テスト作成