0

在我的应用程序中,我有一个搜索字段来查找足球访问量。想能用访问的俱乐部搜索。在我的模型中访问 belongs_to 俱乐部,所以访问有一个字段“club_id”。因此,当我使用 ID 搜索时,它会找到俱乐部,但我希望能够通过俱乐部名称找到它。“club_id”应该替换为“visit.club.name”之类的东西,但我怎样才能做到这一点?这是我当前的查询:

  # Find visits
  def find_anything(find_phrase)
    unless find_phrase.blank?
      @visits = Visit.where('address LIKE ? OR ground LIKE ? OR club_id LIKE ?',
                "%#{find_phrase}%",
                "%#{find_phrase}%",
                "%#{find_phrase}%")
    end
  end
4

2 回答 2

0

这应该够了吧:

Visit.where(club_id: Club.where(name: "ClubName"))
于 2012-07-24T01:03:24.273 回答
0
    Club.joins(:visits).where('visits.club_id' => club_id).first.name

*这假设 Club 模型 has_many :visits

或者

    Club.find(Visit.find_by_club_id(club_id)).name
于 2012-07-24T04:50:42.450 回答