Я пытаюсь создать запрос с использованием ActiveRecord, и я обнаружил, что выполнение limit() и/или where() после того, как order() не работает.rails activerecord limit после заказа
Вот мой код:
candidates = Candidate.order("created_at desc")
puts candidates.to_sql
#prints SELECT "candidates".* FROM "candidates" ORDER BY created_at desc
candidates.limit(20)
puts candidates.to_sql
#prints SELECT "candidates".* FROM "candidates" ORDER BY created_at desc
candidates.where("first_name = ?", "Josh")
puts candidates.to_sql
#prints SELECT "candidates".* FROM "candidates" ORDER BY created_at desc
Я использую рельсы и ActiveRecord (4.1.1)
Кстати, так как вы используете Rails 4, вы можете использовать более чистый синтаксис: 'Candidate.order (created_at:: DESC)' и 'candidates.where (first_name: "Джош") '. – Mohamad