【发布时间】:2014-04-25 21:15:40
【问题描述】:
我有一堂课,让我们接触很多Transitions ...
class Contact
has_many :transitions
...
end
class Transition
belongs_to contact
...
end
我想做的是找到所有最后转换由“系统”执行的联系人。显然,Transition 有一个performed_by 列,可以是“系统”或“用户”。我正在尝试一些不同的东西,但无法得到我真正需要的东西。我在想一些类似的事情......
Contact.
joins(:transitions).
where('transitions.performed_by = ', 'system')
但这会得到所有有任何转换为“系统”的联系人,我只想要最后一次转换为“系统”的联系人。
想法?
【问题讨论】:
-
我不确定你真的需要这样的
Transition.where(:performed_by => 'system').order("created_at ASC").last.contact -
我实际上稍微简化了真正的问题,这将在一些其他联系人查询(范围/短截的 lambda)的中间。不过,我会看一下,看看我是否可以朝这个方向前进@Kingston。谢谢。
标签: ruby-on-rails-3 activerecord