在我的应用程序中,我有一个搜索字段来查找足球访问。我希望它能够通过访问俱乐部进行搜索。在我的模型访问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
答案 0 :(得分:0)
应该做的诀窍:
Visit.where(club_id: Club.where(name: "ClubName"))
答案 1 :(得分:0)
Club.joins(:visits).where('visits.club_id' => club_id).first.name
*这假设俱乐部模式has_many:访问
或
Club.find(Visit.find_by_club_id(club_id)).name