Django error - matching query does not exist Django error - matching query does not exist django django

Django error - matching query does not exist


Maybe you have no Comments record with such primary key, then you should use this code:

try:    comment = Comment.objects.get(pk=comment_id)except Comment.DoesNotExist:    comment = None


your line raising the error is here:

comment = Comment.objects.get(pk=comment_id)

you try to access a non-existing comment.

from django.shortcuts import get_object_or_404comment = get_object_or_404(Comment, pk=comment_id)

Instead of having an error on your server, your user will get a 404 meaning that he tries to access a non existing resource.

Ok up to here I suppose you are aware of this.

Some users (and I'm part of them) let tabs running for long time, if users are authorized to delete data, it may happens. A 404 error may be a better error to handle a deleted resource error than sending an email to the admin.

Other users go to addresses from their history, (same if data have been deleted since it may happens).


You can use this:

comment = Comment.objects.filter(pk=comment_id)