【发布时间】:2019-10-29 21:14:25
【问题描述】:
这是用于文章的 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" 和其他值的文章。
如果可以,请告诉我。
谢谢
【问题讨论】:
-
我建议阅读How to ask,尤其是“帮助他人重现问题”部分.. 理想情况下,我们需要有表格结构、示例数据和预期结果,另见@ 987654322@
-
in 需要一个由逗号分隔的值列表,而不是恰好有一个逗号分隔的字符串作为值的单个值。两者可能看起来相似,但并不相同。
标签: mysql ruby-on-rails-4 activerecord