【发布时间】:2017-02-10 02:11:37
【问题描述】:
如何根据属性值、该属性存在于连接表中的位置以及 JSON 格式对 ActiveRecord 关系进行升序排序?
首先,我正在查询成员并加入skills 表。
members = Member
.select('
member.id,
member.skills_id,
member.name,
member.position,
skills.data as data')
.join('left join skills on skills.id = member.skills_id')
在每个成员记录中,skills.data 是一个带有 2 个键的 JSON,technical 和 general,
即:{'technical': 'accounting', 'general': 'planning'}
我想做类似的事情,
if project.status == 'complex'
members.sort_by {|x| x['data']['technical']}
else
members.sort_by {|x| x['data']['general']}
end
所以我可以根据成员的技能按字母顺序,根据不同的情况对成员进行排序。这可能吗?
抱歉,如果我没有清楚地解释这一点。
【问题讨论】:
标签: ruby-on-rails activerecord