我正在尝试使用'Employee.where(年龄:<“60”)。order(:first name)'。它不起作用。有什么不对吗?
答案 0 :(得分:2)
假设你的:age字段是一个整数,你需要按顺序排序:first_name它是这样的:
Employee.where('age < ?', 60).order(:first_name)
答案 1 :(得分:1)
请查看into documentation。您将找到每个ActiveRecord查询方法的说明,包括where
和order
。
答案 2 :(得分:0)
我会这样做:
#Controller
@employees = Employee.sort_by_name('first_name ASC').young_employees
#model
scope :sort_by_name, ->(criteria) { order: criteria }
scope :young_employes, -> { where("age < ?", 60)}
为了实现这一目标,请检查您的年龄<#39;列是整数类型,并且您的名字列也称为&#39; first_name&#39;