0

假设有一个社区同时拥有“apple”和“APPLE”标签。

然后如果我用参数“apple”执行这个

@communities = Community.joins(taggings: :tag).where(tags: { name: params[:tag] })

结果页面出现2组同一个社区来。
这可能是因为它使用大写和小写的 params[:tag] 获取。

我怎样才能严格这一点并使其不like搜索?我想要区分大小写和完全匹配。

4

1 回答 1

4

尝试将属性名称包含在二进制文件中。

 @communities = Community.joins(taggings: :tag).where(['binary(tags.name) = ?', params[:tag]])
于 2013-01-30T17:50:50.117 回答