Belongs_to and order

Two tables:
Users (id, username)
Books (id, name, user_id)

User has_many :books
and
Book belongs_to :user

How can I order Books by username?

@books = Book.all.order(user.username) ???

On Dec 9, 2011, at 2:28 PM, Fresh M. wrote:

@books = Book.all.order(user.username) ???
@books = Book.includes(:user).order(‘users.username’).all

-or-

@books = Book.includes(:user).all.sort_by {|book| book.user.username }

the first gets the database to return the books in the username order

The second gets the books as ruby objects, then uses the sort_by method
to do the ordering.

-Rob

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs