Django - id vs pk

При написании запросов django можно использовать оба параметра id/pk в качестве параметров запроса.

Object.objects.get(id=1)
Object.objects.get(pk=1)

Я знаю, что pk обозначает первичный ключ и является просто ярлыком, согласно документации django. Однако неясно, когда нужно использовать id или pk.

Ответ 1

Это не имеет значения. pk более независим от фактического поля первичного ключа, то есть вам не нужно заботиться о том, называется ли поле первичного ключа id или object_id или что-то еще.

Он также дает вам больше согласованности, если у вас есть модели с разными полями первичных ключей.