繁体   English   中英

Rails订单模型通过JSONB字段中的嵌套属性

[英]Rails Order Model By Nested Attributes in JSONB field

我有一个Campaign模型,其转换率如下所示:

campaign.quota_data["raw_quota_data"][0]["Conversion"] = 33

我想做类似的事情

Campaign.all.order(quota_data["raw_quota_data"][0]["Conversion"])

做到这一点的最佳方法是什么?

编辑: quota_data数据结构示例如下:

{"raw_quota_data"=>
  [
    {"QuotaCPI"=>1.5, "Questions"=>nil, "Conversion"=>0, "SurveyQuotaID"=>4205891, "SurveyQuotaType"=>"Total", "OverQuotaThreshold"=>true}
  ],
  "available_quotas"=>[{"id"=>4205891, "cpi"=>1.0499999999999998, "name"=>"Total", "traits"=>{}, "available"=>400, "conversion"=>0}],
  "rejectable_trait_groups"=>[]
}

从数据库中获取数据后,您基本上是在尝试进行内存中排序。 您可以只使用array.sortarray.sort_by

Campaign.all.sort_by {|c| c.quota_data["raw_quota_data"][0]["Conversion"]}}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM