sc=scorm.objects.filter(Header__id=qp.id)
if sc.count() > 0:
...
Преимущество над, например, len() заключается в том, что QuerySet еще не оценен:
count() выполняет SELECT COUNT(*) за кулисами, поэтому вы всегда должны использовать count(), а не загружать всю запись в объекты Python и вызывать len() в результате.
if scorm.objects.filter(Header__id=qp.id).exists():
....
Возвращает True, если QuerySet содержит любые результаты, а False, если нет. Это пытается выполнить запрос самым простым и быстрым способом, но он выполняет почти тот же запрос, что и обычный запрос QuerySet.
Ответ 2
Как и в Django 1.2, вы можете использовать exists():