我对active_record查询有问题,抱歉,我是使用rails的新手。
我有一个模型订阅,它有子SubscriptionVersion,我保留所有可以更新的信息。
在API调用中,例如get请求,我合并来自订阅和当前版本(@subscription.subscription_versions.last
)的数据,并为响应提供合并的哈希,但是我遇到了按值排序和过滤的问题在那个current_version。
当我尝试这样做时
@subscriptions.joins(:subscription_versions).order('subscription_versions.version')
它需要所有版本并按最小值排序,即使订阅有5个版本,最新版本是5(current_version)。
所以...有人可以给我建议如何在订阅模型current_version_id
中添加新字段的情况下为其生成查询吗?
答案 0 :(得分:0)
如果我理解正确,您只想返回最后一个subscription_version?
根据版本的排序方式,您可以这样做(Haven未对此进行测试):
@subscriptions.joins(:subscription_versions).order('subscription_versions.version').first
或
@subscriptions.joins(:subscription_versions).order('subscription_versions.version').last