0

我有以下关联:

类资源 < ActiveRecord::Base belongs_to :author

 def self.search(search)
     where('title ILIKE ? OR description ILIKE ?', "%#{search}%","%#{search}%")
 end

我需要搜索作者姓名,如下所示:

 where('title ILIKE ? OR description ILIKE ? OR author_name ILIKE ?', "%#{search}%","%#{search}%","%#{search}%" )

结尾

这显然不起作用,因为我在 Resource 表中有 author_id 而不是作者姓名字段。

我是一个菜鸟,所以任何帮助表示赞赏

谢谢

4

1 回答 1

2

您可以使用 joins 方法来连接 authors 表。请参见下面的示例:

def self.search(search)
 joins(:author).where('title ILIKE ? OR description ILIKE ? OR authors.name ILIKE ?', "%#{search}%","%#{search}%","%#{search}%")
end
于 2012-10-16T22:18:19.403 回答