通过rails关联搜索ActiveRecord

时间:2011-11-28 13:36:30

标签: ruby-on-rails activerecord associations

我有2个型号: 用户和书籍

和连接用户和书籍的连接模型所有权

class Book < ActiveRecord::Base
  has_many :ownerships
  has_many :users, :through => :ownerships,:uniq=>true
  ...
end

class User < ActiveRecord::Base
  has_many :ownerships
  has_many :books, :through => :ownerships
end

class Ownership < ActiveRecord::Base
  belongs_to :user
  belongs_to :book
end

情况是,当用户A在我的网站上搜索图书时,我会返回用户A周围的用户所拥有的相关图书(例如,他们都在同一所大学)。

我可以使用rails accociation吗?

1 个答案:

答案 0 :(得分:0)

感谢@Mark Guk

我最后做的是:

  scope :same_university,lambda{|q,current_user|
    where("title like '%#{q}%'").joins(:sell_infos).where(
      "sell_infos.university is '#{current_user.university}'")
  }