使用PostgreSQL trigram扩展进行模糊搜索
项目描述
此插件提供了创建char和text字段的GIN或GiST索引的能力,并可以使用搜索运算符%在搜索域中使用。目前此模块不会更改后端搜索或任何其他内容。它仅提供对外部插件进行模糊搜索的可能性。
目录
安装
PostgreSQL扩展pg_trgm应可用。在基于debian的发行版中,您必须安装postgresql-contrib模块。
将pg_trgm扩展安装到您的数据库中,或授予您的postgresql用户SUPERUSER权限(这允许odoo模块将扩展安装到数据库中)。
配置
如果已安装odoo模块
您可以通过“设置 -> 数据库结构 -> 三元索引”定义char和text的GIN和GiST索引。新条目将自动创建索引名称。
使用
您可以为res.partner的name字段创建索引。
在搜索中,您可以使用
self.env['res.partner'].search([('name', '%', 'Jon Miller)])
在此示例中,该函数将为John Miller或John Mill返回正面结果。
您可以通过调整集合限制(默认:0.3)来调整返回的字符串数量。注意:目前您必须通过执行以下SQL语句来设置限制
self.env.cr.execute("SELECT set_limit(0.2);")
如有更多疑问,请阅读 pg_trgm 模块的文档。
使用演示数据
如果您在一个 演示 数据库中,有一些示例数据可以帮助您测试该模块的功能。步骤如下
前往 联系人,在搜索框中输入文本 Jon Smith 或 Smith John,然后选择 搜索显示名称为:…
您将看到两个联系人,它们分别是显示名称为 John Smith 和 John Smizz 的联系人。
已知问题/路线图
修改通用搜索部分(例如,在树形视图或多对一字段中)
添加更好的 order by 处理
从版本 16 开始,此模块将不再必要([改进] 索引处理 #83015)
错误跟踪器
错误跟踪在 GitHub 问题 上。如果在那里找不到您的问题,请先报告。如果您是第一个发现它的人,请帮助我们通过提供详细且受欢迎的 反馈 来解决问题。
请不要直接联系贡献者寻求支持或技术帮助。
致谢
贡献者
Christoph Giesel <https://github.com/christophlsa>
Jordi Ballester <jordi.ballester@forgeflow.com>
Serpent Consulting Services Pvt. Ltd. <support@serpentcs.com>
Dave Lasley <dave@laslabs.com>
Tecnativa: * Vicent Cubells * Ernesto Tejeda
teodoralexandru@nexterp.ro 2020 NextERP SRL。
Daniel Reis <dreis@opensourceintegrators.com>
Nikul Chaudhary <nchaudhary@opensourceintegrators.com>
维护者
此模块由 OCA 维护。
OCA,或 Odoo 社区协会,是一个非营利组织,其使命是支持 Odoo 功能的协作开发并促进其广泛应用。
此模块是 GitHub 上 OCA/server-tools 项目的组成部分。
欢迎您贡献力量。要了解如何贡献,请访问 https://odoo-community.org/page/Contribute。
项目详情
哈希值 for odoo_addon_base_search_fuzzy-16.0.1.0.0.13-py3-none-any.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | bb5e3787395a8825bc5f4a28db677354c3ff5febe9e91731477cd5e8b6ad7410 |
|
MD5 | d98bcefb40acd51cabd4e92dee216da3 |
|
BLAKE2b-256 | 56d4aed04ac8b6712f0ca42f09014e23a9131d3040a45e9d89c87cca08366c1e |