exceedone / exment

Exment is open source software for managing information assets on the Web. / Exmentは、情報資産をWeb上で管理するための、オープンソースソフトウェアです。
https://exment.net/docs/#
GNU General Public License v3.0
269 stars 68 forks source link

フリーワード検索で日本語がヒットしない #1269

Closed cruxcr closed 1 year ago

cruxcr commented 1 year ago

Describe the bug / バグの説明

A clear and concise description of what the bug is. / バグの内容のかんたんな説明を記載してください。 選択肢 複数選択 自由入力を許可にすると、日本語が検索されない 半角英数字は、ヒットする

To Reproduce / 再現手順

Please describe the reproduction procedure in as much detail as possible. / 再現手順を、可能な限り詳細に記載してください。 xserver MariaDB10.5 バージョン | 10.5.x 選択肢 複数選択 自由入力を許可にすると、日本語が検索されない 半角英数字は、ヒットする

以前も同様の問題が起きており、一時アップデートで修正されたが また同様の問題が起こっている。

検索にヒットしないのは、データベースとして利用できない状態なので 取り急ぎ、修正をお願いします。

Version / 発生バージョン

Please describe version. / ご利用のバージョンを記載してください。 5.0.4

Error log / エラーログ

If possible, paste error log. Log's path is "storage/logs/laravel.log". / 可能であれば、ログを貼り付けてください。ログのパスは"storage/logs/laravel.log"です。

Screenshots / スクリーンショット

If possible, paste the screenshot. / 可能であれば、スクリーンショットを貼り付けてください。

Additional context / その他

Add any other context about the problem here. / その他に記載すべき内容がありましたら、ご記載ください。

a0z0 commented 1 year ago

こんにちは、一利用者です。 こちらでも試してみましたが同様の事象になりましたので環境依存ではなさそうですね。

フリーワード検索の条件があるのやもしれませんが、DBへの格納状況を見てみたところ... 複数値じゃない場合は検索インデックス列に(日本語含む)文字列そのままが保持され、 複数値の場合は、Unicodeエスケープシーケンスされた(日本語)文字列がjson形式で保存されていました。 例 : ["English", "\u65e5\u672c\u8a9e"] こんな感じで保持されていましたので英語は検索可能なようです。ついでに、[ とかで検索しても引っ掛かります。

調べてはみましたが、役に立たない返信ですみません。

以上

stale[bot] commented 1 year ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.