count()
Подсчитывает количество объектов в QuerySet. Может использоваться для подсчета всех объектов в таблице базы данных:
>>> Worker.objects.count()
10
Или используется для подсчета количества объектов, возвращенных запросом:
>>> Worker.objects.filter(last_name='Smith').count()
3
latest() и earliest()
Возвращают самую последнюю или самую раннюю дату в базе данных для указанного поля (полей):
Worker.objects.latest('created')
Worker.objects.earliest('created')
first()
Возвращает первый объект (строку), соответствующий набору запросов или None, если нет подходящего объекта. Если в наборе запросов порядок не определен, то набор запросов автоматически упорядочивается по первичному ключу.
Worker.objects.first()
last()
Возвращает последний объект (строку), соответствующий набору запросов или None, если нет подходящего объекта. Если в наборе запросов порядок не определен, то набор запросов автоматически упорядочивается по первичному ключу.
Worker.objects.last()
exists()
Возвращает True, если полученный QuerySet содержит один или несколько объектов, False, если QuerySet пустой. Самый распространенный вариант использования этого метода, это проверка на наличие объекта в другом QuerySet'е:
Worker.objects.filter(first_name='Bill').exists()
В случае если ответ не содержит объекты, получим False
update()
Другой способ обновления объектов представляет метод update() в сочетании с методом filter, которые вместе выполняют один запрос к базе данных:
Worker.objects.filter(age=31).update(work_experience=10)
В данном примере мы выбрали всех сотрудников возрастом 31 год и установили им опыт работы равный 10 годам.
delete()
Для удаления мы можем вызвать метод delete() (либо его) у удаляемого объекта:
e = Worker.objects.get(id=1)
e.delete()
Если не требуется получение отдельного объекта из базы данных, тогда можно удалить объект с помощью комбинации методов filter() и delete():
Worker.objects.filter(age__lt=30).delete()