1. ホーム
  2. ジャンゴ

[解決済み】Djangoのクエリ - idとpkの比較

2022-04-02 22:31:25

質問

django のクエリを書くとき、クエリパラメータとして id/pk の両方を使用することができます。

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

django のドキュメントによると、 pk は Primary Key の略で、単なるショートカットであることは知っています。しかし、いつ id と pk のどちらを使うべきかは明らかではありません。

どのように解決するのですか?

問題ないです。 pk は、実際の主キーフィールドとは独立したものです。 id または object_id といった具合です。

また、異なる主キーフィールドを持つモデルがある場合、より一貫性を持たせることができます。