我有一Person
堂课,里面有很多Contact
东西。这些Contact
项目有一列field_name
指定条目是否是电话号码、推特 ID、电子邮件地址等。对于某些人,我有许多Contact
项目具有该人的不同电话号码。但是,我只需要显示最流行的一个(popularity
是另一Contact
列,目前它是 default_scope)。
所以我需要的是一个查询,它可以让我做类似的事情Person.find(1).contacts(:LIMIT_TO_1_PER_FIELD_NAME)
我目前正在以一种糟糕的方式执行此操作,每个 field_name 有一个查询,我确信有更好的方法可以做到这一点,但我对尝试的事情感到茫然。
非常感谢。