gpt4 book ai didi

sql - 使用 ILIKE 查询 Rails

转载 作者:行者123 更新时间:2023-12-04 06:17:56 26 4
gpt4 key购买 nike

我写了一个finder如下:

@cars = @cars.joins(:manufacturers).where("manufacturers.name ILIKE ?", params[:manufacturer].gsub!(/-/, ' '))
params[:manufacturer]以字符串的形式出现 .parameterize d 通过 Rails。

问题是带有“'”或“&”的字符串没有被 ILIKE 正确匹配。

例如,存储在我的数据库中的一些字符串及其参数化版本:
  • “这是一个测试”参数化:“这是一个测试” gsubbed:“这是一个测试”
  • “他没有做”参数化:“他没有做” gsubbed:“他没有做”
  • “这个和那个”参数化:“这个-那个” gsubbed:“这个那个”

  • 因此,当我在 2 的第一部分和 2 的第三部分之间执行 ILIKE 时,它不会创建匹配。与 3. 1 相同,但显然工作正常。

    即使字符串中有特殊字符,如何获得正确匹配的任何想法?

    最佳答案

    由于这与 slug 系统非常相似,因此您应该只添加一个新字段并使用您认为合适的任何名称来命名它,只是不要忘记添加 index所以你不会浪费时间在字符串中搜索。

    您也可以添加 before_createbefore_save以您计划搜索的格式保存对象时自动创建它的回调。

    关于sql - 使用 ILIKE 查询 Rails,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28649702/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com