2012-01-24 72 views
0
#find the most recent news item for a specific locale 
    def self.find_most_recent_news_for_locale 

    first(:include => :news_item_detail,:conditions => ["news_items.created_at= ? AND news_item_details.locale = ?", maximum(:created_at), I18n.locale]) 
    end 

模型我怎樣才能在軌這個記錄搜索寫3個

class NewsItem < ActiveRecord::Base 

has_one :news_item_detail 

end 

class NewsItemDetail < ActiveRecord::Base 

belongs_to :news_item 

end 

回答

1

在Rails 3,您應該使用where方法創造了條件:

def self.find_most_recent_news_for_locale 
    where("news_items.created_at = ? AND news_item_details.locale = ?", 
    maximum(:created_at), 
    I18n.locale).includes(:news_item_details).first 
end 

您可能要作爲快速教程,請觀看Railscasts的episode #202

+0

謝謝Behrang,我確實看過那集,但是在獲取語法時遇到了問題。現在你指出我在正確的方向:) – chell