首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Searchlogic:将作用域与OR组合时的奇怪行为

Searchlogic:将作用域与OR组合时的奇怪行为
EN

Stack Overflow用户
提问于 2011-02-01 08:31:05
回答 2查看 180关注 0票数 1

我目前正在我们的用户数据库中实现一个搜索表单。我想通过id,通过登录或通过电子邮件进行搜索。

当然,我认为最好的方法是结合作用域并简化表单。所以我为:id_or_login_or_email_like添加了一个text_field。

当我在文本字段中输入一个数字时,一切都很正常。

但是,当我键入一个单词并按下搜索时,我键入的值将丢失,并替换为0(零),搜索结果将返回ID、名称或登录名为0的所有用户。

有什么办法解决这个问题吗?我使用的是Rails 2.3.2和SearchLogic 2.4.27。谢谢!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-02-01 23:52:09

不要紧,我找到了一个解决办法:当使用OR组合作用域时,将与整数值相关的作用域放在末尾。

所以不使用:id_or_login_or_email_like,而使用login_or_email_or_id_like。我已经通过github提交了这一期。

票数 1
EN

Stack Overflow用户

发布于 2011-02-01 12:15:34

我认为这是因为您的作用域是在与id进行比较时与整数进行比较,这会导致字符串被转换为0。尝试使用.dup确保传递给作用域的属性不会更改。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4857721

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档