Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 7693339
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 31, 20262026-05-31T21:03:59+00:00 2026-05-31T21:03:59+00:00

I have two models, post and comment. Posts has many comments and comments belongs

  • 0

I have two models, post and comment. Posts has many comments and comments belongs to posts.

What I’m trying to do, is to have a list of posts that is ordered by creation date, unless it has comments. Then it needs to take the creation date of the latest comment.

Now I know that I can include associations like this:

Post.find(:all, :include => [:comments], :order => "comments.created_at DESC, posts.created_at DESC")

But this will order all posts with comments first and then the posts without comments. I don’t want either ones ordered separately, but combined.

The solution also needs to be compatible with a paginate gem like will_paginate.

Edit

I have it now working with the following code:

posts_controller.rb

@posts = Post.order('updated_at DESC').page(params[:page]).per_page(10)
comments_controller.rb

@post = Post.find(params[:post_id])
@post.update_attributes!(:updated_at => Time.now)
  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-31T21:04:00+00:00Added an answer on May 31, 2026 at 9:04 pm

    I’d recommend:
    Add a last_commented_at date field to your Post model. Whenever someone comments on the post update that field. It de-normalizes your db structure a bit, but your query will be faster and more strait-forward.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I have two models related one-to-many: a Post and a Comment : class Post(models.Model):
There are two models Post and Comment. I should get all posts, which have
I have two models, Article and Post that both inherit from a base model
I have two models, Post hasMany Comment . How do I select all Post
Let's say you have two models: Post and Category . Each Post has a
Lets say you have a two models with blog posts and comments set up
I have the following two models class Post < ActiveRecord::Base has_many :comments end class
I have two models: Post and Tag. The Post model has an attr_accessor called
I have two models, Posts and Tags. Posts HasAndBelongsToMany Tags. Let's say a Post
I have two models indexed for searching (User and Item). I'm trying to do

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.