Si vous utilisez une base de données postgresql, vérifiez si l'encodage de votre base de données est UTF-8 ? Vous pouvez afficher les informations de la base de données via l dans le shell de la base de données :
postgres=# \l
List of databases
Name | Owner | Encoding | Collate | Ctype | Access privileges
-----------+----------+-----------+-------------+-------------+-----------------------
db1 | owner | UTF8 | en_US.UTF-8 | en_US.UTF-8 | =Tc/owner +
| | | | | owner=CTc/owner
db2 | owner | SQL_ASCII | C | C | =Tc/owner +
Est-il possible de rechercher en chinois dans le shell de la base de données ? Peut être vérifié via le sql suivant :
SELECT to_tsvector('我们') @@ to_tsquery('我:*');
Le db1 ci-dessus est UTF-8, il prend donc en charge la recherche chinoise,
Vous pouvez vous référer à ceci : https://www.v2ex.com/t/274600...
J'ai déjà utilisé flask-whooshalchemy, mais l'effet de segmentation des mots chinois n'était pas bon. Ensuite, j'ai utilisé Jieba pour créer la table et l'index de segmentation de mots, puis whooshalchemy a recherché la table de segmentation de mots.
Si vous utilisez une base de données postgresql, vérifiez si l'encodage de votre base de données est
UTF-8
? Vous pouvez afficher les informations de la base de données via l dans le shell de la base de données :Est-il possible de rechercher en chinois dans le shell de la base de données ? Peut être vérifié via le sql suivant :
Le db1 ci-dessus est UTF-8, il prend donc en charge la recherche chinoise,
db2 est SQL_ASCII et ne prend pas en charge la recherche chinoise
Vous pouvez vous référer à ceci : https://www.v2ex.com/t/274600...
J'ai déjà utilisé flask-whooshalchemy, mais l'effet de segmentation des mots chinois n'était pas bon. Ensuite, j'ai utilisé Jieba pour créer la table et l'index de segmentation de mots, puis whooshalchemy a recherché la table de segmentation de mots.