假设有一个社区同时拥有“apple”和“APPLE”标签。
然后如果我用param“apple”执行此操作
@communities = Community.joins(taggings: :tag).where(tags: { name: params[:tag] })
在结果页面中,出现2组相同的社区 这可能是因为它使用params [:tag]获取大写和小写。
如何对此进行严格限制并使其like
不进行搜索?
我想要区分大小写且完全匹配。
答案 0 :(得分:4)
尝试将属性名称括在二进制文件中。
@communities = Community.joins(taggings: :tag).where(['binary(tags.name) = ?', params[:tag]])