Hi,
I am currently a little confused with trying to manipulate a named scope that I currently have.
I have two associated models e.g
Catalogue,
has_many :articles
Article:
belongs_to :catalogue
my named scope looks like this (in Class Article)
named scope :finished_articles, { :conditions => [ :finished => true ] }
This works fine on it's own, but I need to trim it to show only the most recent finished article per catalogue (based on created_at field) - currently I may have many finished articles per catalogue, but want to find the latest one.
I have tried to use two named scopes, the other looking like this:
named scope :limited, { :group => "catalogue_id" }
which does only leave one entry per catalogue, but rather than being the most recent entry it is the first created. But I want to gather the most recently created article - one from each catalogue.
I just want to be able to reverse this order, but I can't seem to figure out how to do this (I have a default order already set, but this only seems to affect the scope after it has been rendered..) Also setting the order does not seem to have an effect on how the instances are gathered from the database.
Thank you for any suggestions!