Question

I have a User model and UserProfile model. In the User model I'd like to order my query so that its in alphabetical order by last_name. Then I'd like to order it by the User_profiles "title" attribute (Manager, Executive, Accountant etc).

MODELS:

from django.contrib.auth.models import User

class UserProfile(models.Model):
    user = models.OneToOneField(User)
    title = models.CharField(max_length=20)

VIEW:

def user_index(request):
    i = User.objects.all().order_by('last_name', 'title')
    return render_to_response('db/user_index.html', {'i': i ,}, context_instance=RequestContext(request))

"Title" is not an attribute of the User model, but is related to User by the UserProfile model. How can I sort by alphabetical order for UserProfile.title?

Was it helpful?

Solution

User.objects.order_by('last_name', 'userprofile__title')
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top