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?

Était-ce utile?

La solution

User.objects.order_by('last_name', 'userprofile__title')
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top