【发布时间】:2017-05-11 13:11:15
【问题描述】:
好的,这是一个有趣的。关系类似于:
一个Clienthas_manystate_changes,一个StateChangebelongs_to一个Client。
我有这个问题:
Client.find_by_sql('SELECT * FROM clients cs WHERE NOT EXISTS (SELECT * FROM state_changes WHERE state_changes.client_id = cs.id AND current = true)')
问题在于它返回一个Array 对象而不是一个ActiveRecord Relation。我需要对属于从该查询返回的clients 的state_changes 运行更新。
因此本质上存在两个问题,将结果作为 ActiveRecord 关系获取,然后将它们的所有 state_changes 也作为 ActiveRecord 关系获取,以便我可以运行更新。
我也明白这可能是一种复杂的方法......
【问题讨论】:
-
你搞定了吗?
-
是的,我的解决方案是基于这些范围的,它按照要求完成了 :) 谢谢
-
好的,很高兴知道:)
标签: ruby-on-rails ruby activerecord associations activerecord-relation