Platinum Partner

Getting Rails .find(... :order => Text_field To Sort Alphabetically Ignoring Upper Case

// my problem was that a Rails Find :order(ed) on :description (a text field) was putting Upper case values ahead of all the down case values.  This was written using the Ruby sort_by code.  Perhaps someone will come behind me and post how this could have been done in 1 line.  I welcome it.


def Prayer.in_alphabetical_order
    all_prayers = Prayer.find(:all)
    unsorted_prayers = []
    all_prayers.each do |p|
      unsorted_prayers << {:prayer => p, :description => p.description.downcase}
    end
    sorted_prayers_container = unsorted_prayers.sort_by{ |i| i[:description]}
    sorted_prayers = []
    sorted_prayers_container.each do |p|
      sorted_prayers << p[:prayer]
    end

    return sorted_prayers
  end
{{ tag }}, {{tag}},

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}
{{ parent.authors[0].realName || parent.author}}

{{ parent.authors[0].tagline || parent.tagline }}

{{ parent.views }} ViewsClicks
Tweet

{{parent.nComments}}