その場合は、
- create()
- save(force_insert=True)
のいずれかで対応出来できます。
主キーが重複した場合はsave() / create()できず、IntegrityError例外が発生します。
save()やcreate()時に明示的に例外を発生させたい場合がシチュエーションによってはあろうかと思います。
そんなときは、上記の方法を試してみて下さい。
Djangoでは、save()を使ってレコードを作成したり更新したりすると思います。
オブジェクトが新規作成される場合はINSERT。そうでない場合はUPDATEとDjango側が自動的に切り分けてくれます。
これは、DBレイヤーでは、
ということをしてくれています。
でも、毎回必ずINSERTしたい場合はどうでしょう?
その場合は、
のいずれかで対応出来できます。
主キーが重複した場合はsave() / create()できず、IntegrityError例外が発生します。
save()やcreate()時に明示的に例外を発生させたい場合がシチュエーションによってはあろうかと思います。
そんなときは、上記の方法を試してみて下さい。