mr_muscle
mr_muscle

Reputation: 2900

Rails pull out and sort data with join

I want to pull out and sort all Process by company_name. To get company_name for one process I need to do something like this:

  company_name = Process.first.inquiry_field_responses
                  .joins(:inquiry_field)
                  .where(inquiry_fields: { name: 'company_name' })

  company_name.first&.value

How to pull out and order those processes by company_name?

Upvotes: 0

Views: 36

Answers (1)

ray
ray

Reputation: 5552

You can sort ascending as below,

  company_name = Process.first.inquiry_field_responses
                  .joins(:inquiry_field)
                  .where(inquiry_fields: { name: 'company_name' })
                  .order("inquiry_fields.name")

To sort desceding, use order("inquiry_fields.name desc")

Upvotes: 1

Related Questions