在Rails Active Record查询上使用acts_as_taggable_on?

时间:2010-12-25 01:16:37

标签: ruby-on-rails acts-as-taggable-on

如果我想使用SQL查询从数据库中选择一组记录 通过在记录上设置哪个标签来限定它 - 是否有一种简单的方法可以做到这一点?

e.g。概念上像Select * from Corps where date_added > '2010-01-01' and tag like "legal"

的东西

显然这是不正确的,因为标签数据没有保存在表格中,但你明白了。

Rails3为Active Record查询提供了一种新语法。我可以使用AREL AR语法选择一组记录,然后将标记查找操作应用于那个吗?

1 个答案:

答案 0 :(得分:1)

是的,使用tagged_with()方法。

使用示例SQL查询的示例:

@corps = Corp.where('date_added > 2010-01-01').tagged_with('legal')

您还可以将标签数组放入tagged_with(tagged_with(['legal', 'foo']))。