Django queries - id vs pk

django, orm, primary-key

Solution

It doesn't matter. `pk` is more independent from the actual primary key field i.e. you don't need to care whether the primary key field is called `id` or `object_id` or whatever.

It also provides more consistency if you have models with different primary key fields.

Problem

When writing django queries one can use both id/pk as query parameters. ``` Object.objects.get(id=1) Object.objects.get(pk=1) ``` I know that pk stands for Primary Key and is just a shortcut, according to django's documentation. However it is not clear when one should be using id or pk.

Original source

Related problems