假设有一个社区同时拥有"苹果"和"苹果"标签。
然后,如果我使用参数"苹果"执行此操作
@communities = Community.joins(taggings: :tag).where(tags: { name: params[:tag] })
在结果页面中,出现了 2 组相同的社区。
这可能是因为它使用大写和小写的参数[:tag]获取。
我怎样才能严格这一点并使其不like
搜索?我想要区分大小写和完全匹配。
尝试将属性名称括在二进制中。
@communities = Community.joins(taggings: :tag).where(['binary(tags.name) = ?', params[:tag]])