这是文章的Rails网站。文章具有存储在4个不同字段中的标签-technology_tag,sub_segment_tag和另外两个字段。 每个字段都存储一个逗号分隔的字符串。
我有一种方法,可以通过组合4个逗号分隔的字符串标签字段(以下为@tags)来返回给定文章的标签数组(在显示页面上)。
在文章显示页面上,我有一个查询来获取相关文章,就像这样-
Article.regular.published.where('date>?','2018-01-01')。order(date::desc).where('sub_segment_tag IN(?)',@tags).limit( 3)
例如:-如果当前查看的文章具有- @tags = [“钱包”]
仅匹配sub_segment_tag中只有一个值(即“钱包”)的文章。 我希望它匹配具有sub_segment_tag =“ Wallet,Banking”和其他值的文章。
请告诉我这是否可能。
谢谢
答案 0 :(得分:0)
像运算符一样直接使用进行查询。因为存储在列中的值是一种字符串格式。下面将返回所有带有“钱包”的sub_segment_tag。
Article.regular.published.where('date > ?', '2018-01-01').order(date: :desc).where("sub_segment_tag LIKE (?)", '%Wallet%').limit(3)