【问题标题】:How does siena query search work?siena 查询搜索如何工作?
【发布时间】:2011-06-10 14:34:46
【问题描述】:

我正在寻找有关如何在 siena 中进行查询的文档,该查询返回包含字符串的所有元素。我尝试了类似

return all().search("nome", query).fetch();

但它返回所有元素,没有过滤。

【问题讨论】:

    标签: search playframework siena


    【解决方案1】:

    抱歉耽搁了,我没空!
    您使用 GAE,不是吗?
    锡耶纳 GAE 搜索非常有限,因为 GAE 为其数据存储提供非常有限的搜索功能。所以 Siena 使用一些技巧来实现它的功能。

    总结一下:

    锡耶纳允许以下搜索 GAE(暂时):

    • 只搜索 1 个字段:all().search("the_string_to_search", "the_field_to_search").fetch()

    • 搜索等于一个精确字符串的字段:all().search("myString", "the_field_to_search").fetch()

    • 搜索等于几个精确字符串(如 OR)的字段:all().search("myString1 myString2", "the_field_to_search").fetch()

    • 搜索以字符串开头的字段:all().search("myString*", "the_field_to_search").fetch()

    锡耶纳不允许以下搜索 GAE:

    • 搜索多个字段:all().search("myString", "field1", "field2").fetch() 产生异常

    • 搜索以字符串结尾的字段:all().search("*myString", "the_field_to_search").fetch() GENERATES EXCEPTION

    【讨论】:

    • 非常感谢。有没有办法进行不区分大小写的搜索?
    • 不...这可能是可能的,但它需要大量代码和隐藏的 GAE 查询过滤器,所以我更愿意等待新的 GAE 全文搜索功能。当它出来时,我认为它会有很大帮助!
    猜你喜欢
    • 1970-01-01
    • 2012-03-12
    • 2017-10-10
    • 1970-01-01
    • 1970-01-01
    • 2017-11-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多